You are on page 1of 8

Мета: Ознайомитись зі структурою розгалуженого алгоритму, виробити

практичні навички реалізації розгалуженого алгоритму мовою Java у середовищі


IDE NetBeans.
Технологія виконання роботи
1. Створити файл Протокол_3.doc у власній папці.
2. Виконати вправи 1-2 з теоретичної довідки.
3. Скласти пакет Pr_3_3 у середовищі NetBeans для виконання задачі: якщо
змінна dayOfWeek =1, то вивести повідомлення "Monday"; якщо змінна
dayOfWeek =2, то вивести повідомлення "Tuesday"; якщо змінна dayOfWeek =3,
то вивести повідомлення "Wednesday"; якщо змінна dayOfWeek =4, то вивести
повідомлення "Thursday"; якщо змінна dayOfWeek =5, то вивести повідомлення
"Friday"; для множини {6,7} вивести повідомлення "Week-end"; за замовченням
- "Unknown day".
Лістинг програми зберегти у файл Протокол_3.doc.
4. Скласти пакет Pr_3_4 для визначення вартості демереджуi (плата за
простій судна в порту судновласнику) залежно від кількості днів: до 14 діб
включно – 0 $, від 15 до 30 діб включно – 1650$ за добу, більше 30 діб – 2000 $
за добу. Застосувати оператор case або оператор if. Забезпечити консольне
введення і виведення даних.
Лістинг програми зберегти у файл Протокол_3.doc.

5. Виконайте блок-схему алгоритму вирішення задачі (за бажанням


реалізуйте будь-яким програмним засобом).

Сьогодні Степан чекає в гості свого друга Василя. Щоб підготуватися до


зустрічі, Степану необхідно відвідати два магазини, розташованих поряд з
його будинком. Від будинку до першого магазину веде доріжка довжини d1
метрів, а до другого магазину веде доріжка довжини d2 метри. Також існує
доріжка, яка безпосередньо сполучає два магазини один з одним, довжиною d3
метри Допоможіть Степану обчислити мінімальну відстань, яку йому буде
потрібно пройти, щоб відвідати обидва магазини і повернутися додому.
Степан завжди стартує зі свого будинку. Він повинен відвідати обидва
магазини, переміщаючись тільки за наявними трьома доріжками, і
повернутися назад додому. При цьому його абсолютно не бентежить, якщо
йому доведеться відвідати один і той же магазин або пройти по одній і тій
же доріжці більше одного разу. Єдине його завдання - мінімізувати сумарну
пройдену відстань.
Формат вхідних даних У першому рядку вхідних даних знаходяться 3 цілих
числа d1, d2, d3 (1 ≤ d1, d2, d3 ≤ 108 ) - довжини доріжок:
d1 - довжина доріжки, що з'єднує будинок Степана і перший магазин;
d2 - довжина доріжки, що з'єднує будинок Степана і другий магазин;
d3 - довжина доріжки, що з'єднує два магазина.
Формат вихідних даних: Виведіть мінімальну кількість метрів, яку доведеться
пройти Степану, щоб відвідати обидва магазини і повернутися додому.
Вправа 1. Обчислити корені квадратного рівняння
ах2 + bх + с = 0.
public class Pr_3_1 {
public static void main(String[] args) {
double a = 1.0, b = 2.0, c =-8.0, d, x1, x2;
d = b*b - 4*a*c;
if (d < 0) {
System.out.println("Розвязків немає");
} else if (d > 0) {
d = 0.5 * Math.sqrt(d) / a;
a = -0.5 * b/ a;
x1=a+d;
x2=a-d;
System.out.println("xl = " +x1+",x2 = " +x2);
} else {
x1 = -0.5 * b/ a;
System.out.println("xl = x2" +x1);
}
}

Вправа 2. Скласти пакет у середовищі NetBeans для виконання


задачі: якщо dayOfWeek належить множині {1,2,3,4,5}, то вивести
повідомлення "Week-day"; для множини {6,7} вивести повідомлення
"Week-end"; за замовченням - "Unknown day".
mport java.util.Scanner;// імпортуємо клас
public class Pr_3_1 {
static Scanner dayOfWeek= new Scanner(System.in);
public static void main(String[] args) {
System.out.println("dajte naturalne chyslo do 7");
int b=dayOfWeek.nextInt();
switch (b){
case 1: case 2: case 3: case 4:case 5:
System.out.println("Week-day"); break;
case 6: case 7:
System.out.println("Week-end"); break;
default:
System.out.println("Unknown day");
}
}
}

3.
Програмний код 1:
package com.nobody.part;

import java.util.Scanner;
class Pr_3_3 {
public static void main(String args[]){
System.out.print("Введіть номер дня тижня: ");
Scanner dayOfWeek = new Scanner(System.in);
int number = dayOfWeek.nextInt();
switch (number){
case 1-> System.out.println("Monday");
case 2-> System.out.println("Tuesday");
case 3-> System.out.println("Wednesday");
case 4-> System.out.println("Thursday");
case 5-> System.out.println("Friday");
case 6,7-> System.out.println("Week-end");
default -> System.out.println("Unknown day");
}
}
}

4.
Програмний код 2:

package com.nobody.part;

import java.util.Scanner;

public class Pr_3_4 {


public static void main(String[] args) {
System.out.println("Введіть кількість днів простою судна: ");
Scanner scan = new Scanner(System.in);
int number = scan.nextInt();
if(number<=14){
System.out.println("Плата за простій судна в порту судновласнику
0$");
}else if (number>=15&&number<=30) {
System.out.println("Плата за простій судна в порту судновласнику
1650$");
} else if (number<30) {
System.out.println("Плата за простій судна в порту судновласнику
2000$");
}else {

}
}
}
Програмний код 2 (альтернативний):

package com.nobody.part;

import java.util.Scanner;

public class Pr_3_4 {


public static void main(String[] args) {
System.out.println("Введіть кількість днів простою судна: ");
Scanner scan = new Scanner(System.in);
int number = scan.nextInt();
switch (number) {
case 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 ->
System.out.println("Плата за простій судна в порту судновласнику 0$: ");
case 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30 ->
System.out.println("Плата за простій судна в порту судновласнику 1650$: ");
default -> System.out.println("плата за простій судна в порту
судновласнику 2000$: ");

}
}
}
5.
Програмний код 1:
package com.nobody.part;

public class WayStepan {


public static void main(String[] args) {
long d1=10;
long d2=20;
long d3=30;
if (d1+d2<d3){
long way1=2*(d1+d2);
System.out.println(way1);
} else if (d1+d3<d2) {
long way2=2*(d1+d3);
System.out.println(way2);
} else if (d2+d3<d1) {
long way3=2*(d3+d2);
System.out.println(way3);
}else {
long way4=d1+d2+d3;
System.out.println(way4);
}
}
}

Програмний код 1 (альтернативний):

package com.nobody.part;

import java.util.Scanner;

public class WayStepan {


public static void main(String[] args) {
System.out.println("Введіть скільки метрів першої доріжки: ");
java.util.Scanner scan = new Scanner(System.in);
int d1 = scan.nextInt();
System.out.println("Введіть скільки метрів другої доріжки: ");
Scanner scan1 = new Scanner(System.in);
int d2 = scan1.nextInt();
System.out.println("Введіть скільки метрів третьої доріжки: ");
Scanner scan3 = new Scanner(System.in);
int d3 = scan3.nextInt();
if (d1+d2<d3){
long way1=2*(d1+d2);
System.out.println(way1);
} else if (d1+d3<d2) {
long way2=2*(d1+d3);
System.out.println(way2);
} else if (d2+d3<d1) {
long way3=2*(d3+d2);
System.out.println(way3);
}else {
long way4=d1+d2+d3;
System.out.println(way4);
}
}
}
i
Термін «демередж» (від фр. demeurer – затримуватися) найчастіше використовується у торговельному
мореплавстві як грошова сума, що підлягає сплаті фрахтувальником судновласникові за простій судна під
вантажно-розвантажувальними операціями понад час, передбачений у договорі морського перевезення. Розмір
демереджу визначається угодою сторін, при відсутності угоди – згідно зі ставками, прийнятими у відповідному
порту. У випадку відсутності таких ставок розмір плати за простій судна визначається витратами на утримання
судна і його екіпажу.

You might also like