1 лабораторная работа ОП
.pdfМинистерство науки и высшего образования Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего образования
Томский государственный университет систем управления и радиоэлектроники (ТУСУР)
Кафедра безопасности информационных систем (БИС)
Циклические программы
Отчет по практической работе
по дисциплине «Основы программирования»
Студент гр. 711-2
____________ Е. П. Толстолес
___________
11.02.2022
Принял:
Инженер кафедры БИС
_______ Д.Р. Уразаев
11.02.2022
Томск 2022
2
Оглавление
Введение ........................................................................... |
.....................................3 |
|
2 Словесное и графическое описание алгоритмов ............................................. |
4 |
|
2.1 |
Словесный способ записи ............................................................................... |
4 |
2.2 |
Графический способ записи алгоритмов ....................................................... |
5 |
2.3Листинг исходного кода программ ………………………………………....7
2.4Процесс выполнения программы и вывод данных ………………………..10
3 Заключение ......................................................................................................... |
12 |
3
Введение
Цель работы: овладеть навыками разработки алгоритмов с циклами с параметром и с условием, разработки циклических программ на языке высокого уровня.
Задание: составить консольное приложение для решения нижеприведенных задач согласно варианту, согласованному с преподавателем, вводя данные в ходе выполнения программы. Для выполнения предварительно ознакомьтесь с соответствующими разделами данного пособия. Для задания 1 использовать цикл с параметром, для задания 2 цикл с предусловием либо цикл с постусловием.
Условия задач:
1.Для заданных 10 вещественных чисел определить, сколько из них принимает значение, меньше заданного числа b;
2.Дано целое положительное число N. Найти наименьшее целое положительное число K, которое удовлетворяет условию N: 2 + 1 > 2 + 3 . Если такое К найти невозможно необходимо вывести об этом сообщение на экран.
Цикл – разновидность управляющей конструкции в высокоуровневых языках программирования, предназначенная для организации многократного исполнения набора инструкций.
Виды циклов:
Безусловные циклы;
Циклы с предусловием;
Циклы с постусловием;
Циклы с выходом из середины;
Цикл со счётчиком;
Совместный цикл;
Досрочный выход из цикла;
Пропуск итерации.
4
2Словесное и графическое описание алгоритмов
2.1Словесный способ записи
Согласно условию задания, словесное описание алгоритма А будет иметь вид:
Алгоритм А:
А0 начало;
A1 ввод b;
A2 заполнение рандомными числами массив а и переход к А3; A3 для j от 1 до 10 c шагом 1 выполнять A4;
A4 если a[j]<b, то переход к А5, иначе возврат к А4;
А5 с+=1 и возврат к А3;
А6 вывод с;
А7 остановка.
Согласно условию задания, словесное описание алгоритма В будет иметь вид:
Алгоритм В:
В0 начало;
В1 ввод N, К=1;
В2 пока N: ^2 + 1 <= ^2 + ^3 и К<N выполнять В3;
В3 K+=1;
В4 если К=N, вывод – «такого не существует», иначе вывод К;
В5 остановка.
5
2.2 Графический способ записи алгоритмов
Графический способ записи алгоритма линейной программы А представлен на рисунке 2.1.
Рисунок 2.1 – Блок схема алгоритма А
Графический способ записи алгоритма линейной программы В представлен на рисунке 2.2.
6
Рисунок 2.2 – Блок схема алгоритма В
7
2.3 Листинг исходного кода программ
Листинг программы А представлен ниже. using System;
namespace _1000_7
{
class Program
{
static void Main(string[] args)
{
int[] x = new int[10];
Random rnd = new Random();
int b = Convert.ToInt32(Console.ReadLine()); int k = 0;
for (int i = 0; i < 10; i++)
{
x[i] = rnd.Next(0,10);
}
for (int i = 0; i < 10; i++)
{
if (b > x[i])
{
k = k + 1;
}
}
for (int i = 0; i < 10; i++)
8
{
Console.WriteLine(x[i]);
}
Console.WriteLine(b);
Console.WriteLine(k);
}
}
}
Листинг программы B представлен ниже. using System;
namespace _1000_7
{
class Program
{
static void Main(string[] args)
{
int n = Convert.ToInt32(Console.ReadLine()); int k = 1;
while ((((n / (k * k)) + 1) <= ((n * n) + (n * n * n))) & (k<n))
{
k++;
}
if (k == n)
Console.WriteLine("такого не существует"); else
Console.WriteLine(k);
}
9
}
}
10
2.4 Процесс выполнения программы и вывод данных
Процесс выполнения программы А и вывод программы представлен на рисунке 2.3.
Рисунок 2.5 – Процесс выполнения программы А
Процесс выполнения программы В и вывод программы представлен на рисунке 2.4.
Рисунок 2.4 – Процесс выполнения программы В