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

Министерство науки и высшего образования Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего образования

Томский государственный университет систем управления и радиоэлектроники (ТУСУР)

Кафедра комплексной информационной безопасности электронновычислительных систем (КИБЭВС)

АЛГОРИТМЫ. ЧАСТЬ IV

Отчет по практической работе

по дисциплине «Ознакомительная практика»

Студент гр. 711-2

____________ Е. П. Толстолес

___________

04.04.2022

Принял:

Инженер КИБЭВС

_______ Д.Р. Уразаев

04.04.2022

Томск 2022

2

Оглавление

Введение ...........................................................................

.....................................3

2 Словесное и графическое описание алгоритмов ............................................

4

2.1 Словесный способ записи ..............................................................................

4

2.2 Графический способ записи алгоритмов ......................................................

8

2.3Листинг программ …………………………………………………………...13

2.4Работа программы и корректность вывода ………………………………...22

3 Заключение .....................................................................................................

....25

3

1 Введение

Задачи:

1.В некоторой библиотеке последний четверг месяца – санитарный день. Дано натуральное число n, означающее номер года.

Получить по порядку все числа, на которые в январе, феврале, … , декабре указанного года приходится санитарный день;

2.Компьютер загадывает число от 1 до n. У пользователя есть k

попыток отгадать. После каждой неудачной попытки компьютер сообщает меньше или больше загаданное число. В конце игры текст с результатом (или «Вы угадали», или «Попытки закончились»);

3.Дан массив. Перемешать его элементы случайным образом так,

чтобы каждый элемент оказался на новом месте;

4.Л. Кэрролл в своём дневнике писал, что он тщетно трудился,

пытаясь найти хотя бы три прямоугольных треугольника равной площади, у которых длинны сторон были выражены натуральными числами. Составьте программу для решения этой задачи, если известно, что такие треугольники существуют.

Напишите программу, которая находит все прямоугольные треугольники (длины стороны выражаются натуральными числами), площадь которых не превышает данного числа S.

5.Придумайте формулу для генирации ряда натуральных чисел из отрезка [a, b], близких к случайным. Оформите её ввиде функции,

сгенерируйте при её помощи 100 случайных* чисел.

4

2 Словесное и графическое описание алгоритмов

2.1 Словесный способ записи

Согласно условию задания, словесное описание алгоритма линейной программы будет иметь вид:

А0 начало;

А1 ввод n;

A2 DateTime date1 = new DateTime(n, 1, 31);

А3 вывод data1;

А4 DateTime date2 = new DateTime(n, 2, 28);

A5 вывод data2;

А6 DateTime date3 = new DateTime(n, 3, 31);

A7 вывод data3;

A8 DateTime date4 = new DateTime(n, 4, 30);

A9 вывод data4;

A10 DateTime date5 = new DateTime(n, 5, 31);

A11 вывод data5;

A12 DateTime date6 = new DateTime(n, 6, 30);

A13 вывод data6;

A14 DateTime date7 = new DateTime(n, 7, 31);

А15 вывод data7;

A16 DateTime date8 = new DateTime(n, 8, 31);

A17 вывод data8;

5

A18 DateTime date9 = new DateTime(n, 9, 30);

A19 вывод data9;

A20 DateTime date10 = new DateTime(n, 10, 31);

A21 вывод data10;

A22 DateTime date11 = new DateTime(n, 11, 30);

A23 вывод data11;

A24 DateTime date12 = new DateTime(n, 12, 31);

A25 вывод data12;

А26 остановка.

Согласно условию задания, словесное описание алгоритма линейной программы будет иметь вид:

В0 начало;

В1 ввод n, k, array[];

В2 count = 0;

B3 заполнение массива array рандомным числом;

B4 для j от 0 до j<k, выполнять В5;

В5 ввод c;

В6 если c == array[0], то выполнять В7, иначе выполнять В8; B7 вывод «Ты выиграл», переход к В15;

B8 если с > array[0], то переход к В9, иначе переход к В11;

В9 вывод «Загаданное число меньше»;

В10 count +=1, переход к В4;

B11 вывод «Загаданное число больше»;

В12 count += 1, переход к В4;

6

B13 если k == count;

В14 Вывод «попытки закончились;

В15 остановка.

Согласно условию задания, словесное описание алгоритма линейной программы будет иметь вид:

С0 начало;

С1 ввод m1 = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }, m2 = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };

C2 пока (m1[0] == 1 || m1[1] == 2 || m1[2] == 3 || m1[3] == 4 || m1[4] == 5 || m1[5] == 6 || m1[6] == 7 || m1[7] == 8 || m1[8] == 9 || m1[9] == 10), выполнять С3, иначе переход к С6;

C3 для всех i от 0 до i<=9, выполнять С4, иначе переход к С2;

С4 создаём рандомное число x;

С5 temp = m1[i], m1[i] = m1[x], m1[x] = temp;

С6 для i от 0 до < m1.Length выполнять С7, иначе переход к С8; C7 вывод ($"{i+1}-{m1[i]}");

С8 остановка.

Согласно условию задания, словесное описание алгоритма линейной программы будет иметь вид:

D0 начало;

D1 ввод s;

D2 count = 0;

D3 для а от 0 до а<s выполнять D4, иначе переход к D10;

D4 для b от 0 до b<s выполнять D5, иначе переход к D3;

7

D5 для c от 0 до c<s выполнять D6, иначе переход к D4;

D6 a2 = a^2, b2 = b^2, c2 = c^2;

D7 если a2 + b2 == c2, выполнять D8, иначе переход к D3;

D8 если (((a2 + 2 * a * b + b2 - c2) / 4) == s), выполнять D9, иначе переход к D3;

D9 вывод a, b, c, переход к D3;

D10 если (count == 0), выполнять D11;

D11 вывод «Таких треугольников не существует»;

D12 остановка.

Согласно условию задания, словесное описание алгоритма линейной программы будет иметь вид:

E0 начало;

E1 создание функции для генерации чисел;

E2 ввод a, b;

Е3 для i от 0 до 100 выполнять Е4;

Е4 вывод изменённого массива через функцию Rch; E5 остановка.

Словесное описание функции создание случайных чисел:

DX0 RCH;

DX1 Random rand = new Random();

DX2 return rand.Next(a+1,b-1).

8

2.2 Графический способ задачи алгоритмов

Графический способ записи алгоритма линейной программы A представлен на рисунке 2.1.

Рисунок 2.1 – Блок схема алгоритма А

Графический способ записи алгоритма линейной программы B

представлен на рисунке 2.2.

9

Рисунок 2.2 – Блок схема алгоритма В

Графический способ записи алгоритма линейной программы C

представлен на рисунке 2.3.

10

Рисунок 2.3 – Блок схема алгоритма С

Графический способ записи алгоритма линейной программы D

представлен на рисунке 2.4.

Соседние файлы в папке Ознакомительная практика