Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лаб работа языки высокого уровня java (1)

.docx
Скачиваний:
3
Добавлен:
25.05.2024
Размер:
65.29 Кб
Скачать

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ

БЕЛГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ НАЦИОНАЛЬНЫЙ

ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ

(НИУ «БелГУ»)

ИНСТИТУТ ИНЖЕНЕРНЫХ И ЦИФРОВЫХ ТЕХНОЛОГИЙ

КАФЕДРА ПРИКЛАДНОЙ ИНФОРМАТИКИ И ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ

Отчет по лабораторной работе № 1

Тема работы “Разработка консольного приложения для изучения типов данных и операторов. Документирование кода”

по дисциплине “Программирование на языках высокого уровня”

Белгород, 2024

Цель работы

Получить общее представление о создании программ на языке Java и познакомиться с его основными понятиями. Изучить синтаксические единицы, основные операторы и структуру кода программы. Освоить способы компиляции исходного кода и запуска программы.

Ход выполнения работы

В ходе выполнения работы получил навыки составления простых программ на языке программирования Java, изучил основные синтаксические элементы языка, освоил запуск и отладку программ.

Результат выполнения заданий представлен на рисунках 1-3.

Рисунок 1 – Выполнение задания 1

Рисунок 2 – Выполнение заданий 2, 3 и 4

Рисунок 3 – Выполнение индивидуального задания

Таким образом, были успешно выполнены все задания лабораторной работы.

Вывод

Получил общее представление о создании программ на языке Java и познакомился с его общими понятиями. Изучил синтаксические единицы, основные операторы и структуру кода программы. Освоил способы компиляции и запуска исходного кода программы.

Контрольные вопросы

  1. JDK предназначен для разработки программ и позволяет компилировать исходный код. JRE предназначен только для запуска уже скомпилированного кода.

  2. Классы-оболочки предназначены для хранения тех же типов данных, что и базовые типы, но при этом дают им дополнительные возможности. Типы данных же могут хранить только сами значения и не позволяют ничего с ними делать, а оболочки позволяют работать с ними как с объектами.

  3. Дескрипторы позволяют упростить создание документации, добавляя к полям и классам “поля”, в которых можно хранить данные. Впоследствии эти данные могут считываться специальными утилитами для создания документации.

  4. Основные операторы управления – 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);

}

}