
Лаб работа языки высокого уровня java (1)
.docxФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
БЕЛГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ НАЦИОНАЛЬНЫЙ
ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ
(НИУ «БелГУ»)
ИНСТИТУТ ИНЖЕНЕРНЫХ И ЦИФРОВЫХ ТЕХНОЛОГИЙ
КАФЕДРА ПРИКЛАДНОЙ ИНФОРМАТИКИ И ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ
Отчет по лабораторной работе № 1
Тема работы “Разработка консольного приложения для изучения типов данных и операторов. Документирование кода”
по дисциплине “Программирование на языках высокого уровня”
Белгород, 2024
Цель работы
Получить общее представление о создании программ на языке Java и познакомиться с его основными понятиями. Изучить синтаксические единицы, основные операторы и структуру кода программы. Освоить способы компиляции исходного кода и запуска программы.
Ход выполнения работы
В ходе выполнения работы получил навыки составления простых программ на языке программирования Java, изучил основные синтаксические элементы языка, освоил запуск и отладку программ.
Результат выполнения заданий представлен на рисунках 1-3.
Рисунок 1 – Выполнение задания 1
Рисунок 2 – Выполнение заданий 2, 3 и 4
Рисунок 3 – Выполнение индивидуального задания
Таким образом, были успешно выполнены все задания лабораторной работы.
Вывод
Получил общее представление о создании программ на языке Java и познакомился с его общими понятиями. Изучил синтаксические единицы, основные операторы и структуру кода программы. Освоил способы компиляции и запуска исходного кода программы.
Контрольные вопросы
JDK предназначен для разработки программ и позволяет компилировать исходный код. JRE предназначен только для запуска уже скомпилированного кода.
Классы-оболочки предназначены для хранения тех же типов данных, что и базовые типы, но при этом дают им дополнительные возможности. Типы данных же могут хранить только сами значения и не позволяют ничего с ними делать, а оболочки позволяют работать с ними как с объектами.
Дескрипторы позволяют упростить создание документации, добавляя к полям и классам “поля”, в которых можно хранить данные. Впоследствии эти данные могут считываться специальными утилитами для создания документации.
Основные операторы управления – if, else, while, for, return, break, continue, блок кода.
Листинг программы
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
System.out.println("\n Номер 1");
fizzbuzz();
System.out.println("\n Номер 2");
invertedOutput(new String[] { "Hello ", " world" });
System.out.println("\n Номер 3");
fibonacci(100);
int number = 7;
System.out.println("\n\n Номер 4");
System.out.printf("Факториал числа %d равен %d", number, factorial(number));
int first = 30, second = 45, third = 60;
System.out.println("\n\n Индивидуальное задание");
System.out.printf("НОД чисел %d, %d и %d равен %d\n\n", first, second, third, findGcd(first, second, third));
}
static void fizzbuzz() {
System.out.println();
for (int i = 1; i <= 500; i++) {
System.out.printf("%d: ", i);
if (i % 5 == 0) {
System.out.print("fizz");
}
if (i % 7 == 0) {
System.out.print("buzz");
}
System.out.println();
}
}
static void invertedOutput(String[] arguments) {
for (int i = arguments.length - 1; i >= 0; i--) {
String currentString = arguments[i];
for (int j = currentString.length() - 1; j >= 0; j--) {
System.out.print(currentString.charAt(j));
}
}
System.out.println();
}
static void fibonacci(long limit) {
if (limit < 0) {
System.out.println("Нельзя вычислить числа Фибоначчи для отрицательного числа");
return;
}
if (limit < 2) {
System.out.println("Числа Фибоначчи для этого лимита - 1 и 1");
return;
}
System.out.printf("%d ", 1);
long firstNumber = 1, secondNumber = 1;
while (true) {
System.out.printf("%d ", secondNumber);
secondNumber += firstNumber;
if (secondNumber > limit)
break;
firstNumber = secondNumber - firstNumber;
}
}
static int factorial(int number) {
int fact = 1;
while (number > 0) {
fact *= number;
number--;
}
return fact;
}
static int gcd(int a, int b) {
while (b != 0) {
int temp = a % b;
a = b;
b = temp;
}
return a;
}
static int findGcd(int first, int second, int third) {
return gcd(gcd(first, second), third);
}
}