You are on page 1of 10

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

ЗАПОРІЗЬКИЙ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ


МАТЕМАТИЧНИЙ ФАКУЛЬТЕТ
КАФЕДРА ПРОГРАМНОЇ ІНЖЕНЕРІЇ

Дисципліна «Мова програмування Java»


Лабораторна робота № 1: “ Основні принципи програмування на мові Java "

Виконав студент гр. 6.1210-2пі


Новіков Олег

Перевірив: Викладач
Горбенко Віталій Іванович

Запоріжжя
2022
Хід роботи
Завдання 1
Завдання 2
Напишіть програму обчислення довжини гіпотенузи із значень катетів, які
задаються як аргументи командного рядку.
public class Main {
public static void main(String[] args) {

double firstLeg = Integer.parseInt(args[0]); // String to int


double secondtLeg = Integer.parseInt(args[1]); //String to int
double hypotenuse;

System.out.println("Your numbers are " + firstLeg + " and " + secondtLeg);

hypotenuse = Math.sqrt(firstLeg * firstLeg + secondtLeg * secondtLeg);

System.out.println("Hypotenuse is " + hypotenuse);


}
}
Завдання 3
Напишіть програму рішення рівняння A3 +B3 +C3 =ABC методом перебирання
(A,B,C є цифрами числа ABC).
public class Main {

public static void main(String[] args) {

int firstNumber, secondNumber, thirdNumber;

for (int abc = 100; abc < 1000; abc++) {

firstNumber = abc / 100;

secondNumber = (abc - (firstNumber * 100)) / 10;

thirdNumber = abc - firstNumber * 100 - secondNumber * 10;

if (Math.pow(firstNumber, 3) + Math.pow(secondNumber, 3) + Math.pow(thirdNumber, 3) ==


abc) {

System.out.println(abc + " = " + firstNumber + "^3 + " + secondNumber + "^3 + " +


thirdNumber + "^3\n");

}
Завдання 4
Напишіть програму, в якій за допомогою циклу обчислюється 2n .
public class Main {
public static void main(String[] args) {

int mainNumber = 2; //за умовою завдання


int check = 2; //лічильник
boolean counter = true; //лічильник для реголювання виходу з циклу

while(counter == true){
mainNumber *= 2;

if (mainNumber < 1){


counter = false;
}else {
System.out.println("2 у степені " + check + " = " + mainNumber);
check++;
}
}
System.out.println("\nЧисло 2 вдалося звести у ступінь " + (check-1) + " разів");
}
}

Програма далі не може зводити число у ступень, якщо ми ще раз зведемo у ступень
це число то вийдемо за межі максимального значення типу int.
Завдання 5
Напишіть програму для обчислення факторіалу довільного числа n. Факторіал
якого максимального числа можна обчислити? Чим це обумовлено?
public class Main {
public static void main(String[] args) {
boolean counter = true;
int factorial = 1;
int check = 1;

while(counter == true){
factorial *= check;

if (check < 13) {


System.out.println("Факторіл числа " + check + " дорівнює " + factorial);
check++;
}
}
}
}

Програма далі не зможе коректно розрахувати факторіал числа більш ніж 12. Якщо
ми розрахуємо факторіл числа 13 то вийдемо за межі максимального значення типу
int;
Завдання 6

public class Main {


public static void main(String[] args) {

boolean find = false;

for(int n = 2; n <= 10; n++)


{
for (int a = 1; a <= 100; a++)
{
for (int b = 1; b <= 100; b++)
{
for (int c = 1; c <= 100; c++)
{
if(Math.pow(a, n) + Math.pow(b, n) == Math.pow(c, n)){
System.out.println("Yes");
find = true;
}
}
}
}
}
if(!find) System.out.println("Nothing");
}
}
Завдання 7
Напишіть програму, що для заданого числового масиву дозволяє міняти місцями
елементи з максимальним та мінімальним значенням.
public class Main {
public static void main(String[] args) {

int[] arr = new int[10];

System.out.println("\n Random: ");


for (int i = 0; i < 10; i++){
arr[i] = (int)(10 * Math.random());
System.out.print(" " + arr[i]);
}

int minNumber = arr[0];


int maxNumber = arr[arr.length - 1];

for (int i = 0; i < arr.length - 1; i++){


if(arr[i] < arr[minNumber] ){
minNumber = i;
}
if (arr[i] > arr[maxNumber]){
maxNumber = i;
}
}
System.out.println("\n\n Min number " + arr[minNumber] + "\n Max number " +
arr[maxNumber]);

int check = arr[minNumber];


arr[minNumber] = arr[maxNumber];
arr[maxNumber] = check;

System.out.println("\n Sorted: ");


for (int i = 0; i < arr.length; i++){
System.out.print(" " + arr[i]);
}
}
}

You might also like