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

laba1

.pdf
Скачиваний:
16
Добавлен:
29.10.2021
Размер:
901.68 Кб
Скачать

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

«ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ» (ТУСУР) Кафедра безопасности информационных систем (БИС)

Отчет по лабораторной работе №1 по дисциплине «Основы программирования»

Тема работы: Циклические программы.

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

_______Подойницын К.В.

07.05.2021

Принял Инженер научно-технического отдела ЦСП

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

07.05.2021

2021

Содержание Введение…………………………3

Теоретические сведения по теме лабораторной работы………..4-5

Ход работы…………………………6-10

Заключение…………………………11

Список использованных источников…………………………12

1 Введение

Цель работы: овладеть навыками разработки алгоритмов с циклами с параметром и с условием, разработки циклических программ на языке высокого уровня.

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

2 Теоретические сведения по теме лабораторной работы

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

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

Бесконечный цикл – цикл в котором отсутствует условие выхода из цикла, либо условие выхода из цикла не достижимо в

реальности.

Циклический алгоритм – алгоритм, предусматривающий многократное повторение одного и того же действия над новыми исходными данными.

Счетчик цикла – переменная, контролирующая повторы выполнения циклов. Счетчики циклов изменяют своё значение при каждой итерации цикла, принимая уникальное значение для каждой отдельной итерации. Счетчик цикла используется для определения момента, когда цикл должен завершить свою работу. В ГОСТ [3]

присутствует символ «подготовка данных» в произвольной форме (в

ГОСТ нет ни пояснений, ни примеров), задает входные значения.

Используется обычно для задания циклов со счетчиком.

Таким образом, оператор for имплементирует цикл с параметром. В любой момент в блоке операторов for вы можете прервать цикл с помощью оператора break или перейти к следующей итерации в цикле с помощью оператора continue. Также можно выйти из цикла for с помощью операторовgoto, returnили throw.

Оператор while выполняет оператор или блок операторов, пока определенное логическое выражение равно значению true. Так как это выражение оценивается перед каждым выполнением цикла, цикл while

выполняется ноль или несколько раз. В любой точке блока операторов while можно разорвать цикл с помощью оператора break. Также можно

выйти из цикла while с помощью операторов goto, return или throw.

Оператор while имплементирует цикл с предусловием в языке программирования C#.

Оператор do-while выполняет оператор или блок операторов,

пока определенное логическое выражение равно значению true. Так как это выражение оценивается после каждого выполнения цикла,

цикл do-while выполня ется один или несколько раз. Это отличает его от цикла while, который выполняется от нуля до нескольких раз. В

любой точке блока операторов do можно разорвать цикл с помощью оператора break или с помощью операторов goto, returnили throw.

3 Ход работы

Задание 1

Для заданного натурального числа n рассчитать сумму и сравнить со значением .

Описание алгоритма:

А1 Начало А2 Ввод n

А3 S=0

А4 для i от 1 до n выполняем А5

А5 S=S+i

А6 вывод S

А7 k=n*(n+1)/2

А8 если S==k то вывод S=k

А9 еще если S>k то вывод S>k

А10 еще если S<k то вывод S<k

А11 Вывод S

А12 Остановка

Представление алгоритма в виде блок-схемы:

Рисунок 1 – блок-схема Листинг исходного кода программы:

int n, k, S; Console.WriteLine("Введите n");

n = int.Parse(Console.ReadLine()); S = 0;

for (int i = 1; i <= n; i++)

{

S = S + i;

}

Console.WriteLine($"S={S}"); k = n * (n + 1) / 2;

if (S == k) Console.WriteLine("S = k");

else if (S > k) Console.WriteLine("S > k");

else if (S < k) Console.WriteLine("S < k");

Console.WriteLine(S);

Рисунок 2 – скриншот работы программы

Программа работает корректно.

Задание 2

Разработать программу вычисляющие произведение чисел

, до тех пор, пока сумма не превышает 984621024.

Описание алгоритма:

B1 Начало

B2 Ввод n

B3 цикл S=n*(n*2) пока S<=984621024 иначе B4

B4 n*2 и возврат числа к произведению

B5 Вывод S

B6 Остановка

Представление алгоритма в виде блок-схемы:

Рисунок 3 – блок-схема Листинг исходного кода программы:

int n, S; Console.WriteLine("Введите n");

n = int.Parse(Console.ReadLine()); do

{

S = n * (n * 2); n++; Console.WriteLine(S);

} while (S <= 984621024);

Рисунок 4 – скриншот работы программы

Программа работает корректно.

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