Скачиваний:
7
Добавлен:
09.04.2023
Размер:
85.65 Кб
Скачать

МИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ,

СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ

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

«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА»

(СПбГУТ)

Факультет Инфокоммуникационных сетей и систем

Кафедра Защищенных систем связи

Дисциплина Разработка защищенного программного обеспечения

ОТЧЕТ ПО ЛАБОРАТОРНОЙ РАБОТЕ №2

Циклы

(тема отчета)

Направление/специальность подготовки

10.03.01 Информационная безопасность

(код и наименование направления/специальности)

Студент:

(Ф.И.О., № группы) (подпись)

Преподаватель:

Цветков А.Ю.

(Ф.И.О) (подпись)

Цель лабораторной работы

  1. Освоить использование циклических операторов в Java.

  2. Освоить работу с составным оператором.

Используемое программное обеспечение

  1. JDK 1.5 и выше.

  2. Интегрированная среда разработки на Java.

Задание на лабораторную работу

  1. Написать программу на Java, выводящую на экран заданный вариантом рисунок, с использованием циклов.

  2. Проверить правильность работы программы.

  3. Собрать исполняемый jar м отправить на проверку.

Вариант основного задания

Рис. 1. Вариант основного задания.

Блок-схема основного задания

Рис. 2. Блок-схема основного задания.

Листинг программного кода основного задания

public class Main {

    public static void main(String[] args) {

        for (int i = 7; i > 0; i--) {

            for (int k = 0; k < i; k++) {

                // Вывод пробелов i раз

                System.out.print(' ');

            }

            for (int k = (8-i)*2; k>0; k--){

                System.out.print('*');

            }

            for (int k = 0; k < i; k++) {

                // Вывод пробелов i раз

                System.out.print(' ');

            }

            System.out.println();

        }

        for (int i = 0; i < 8; i++) {

            // Цикл по строкам

            for (int k = 0; k < i; k++) {

                // Вывод пробелов i раз

                System.out.print(' ');

            }

            for (int k = (8 - i) * 2; k > 0; k--) {

                // Вывод звёздочек (5 - i) * 2 раз

                System.out.print('*');

            }

            for (int k = 0; k < i; k++) {

                // Вывод пробелов i раз

                System.out.print(' ');

            }

            // Переход на следующую строку

            System.out.println();

        }

    }

}

Вариант дополнительного задания

Рис. 3. Вариант дополнительного задания.

Листинг программного кода дополнительного задания

public class Dop {

    public static void main(String[] args) {

        int o = 7;

        int availableChars = 16;

        for (int i = 7; i > 0; i--) {

            availableChars = 16 - (2*(7-i));

            for (int k = 0; k < i; k++) {

                // Вывод пробелов i раз

                if (availableChars > 0) {

                    System.out.print(' ');

                    availableChars--;

                }

            }

            for (int k = (8-i)*2; k>0; k--){

                if (availableChars > 0) {

                    System.out.print('*');

                    availableChars--;

                }

            }

            

            // Вывод пробелов i раз

            for (int j = 0; j < o; j++){

                if (availableChars > 0) {

                    System.out.print(' ');

                    availableChars--;

                }

            }                

            o-=3;

            System.out.println();

        }

        System.out.print('*');

        System.out.println('*');

    }

}

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

Санкт-Петербург

2021

Соседние файлы в предмете Разработка защищенного программного обеспечения