Циклический вычислительный процесс
Алгоритмы циклических процессов
Циклический процесс - это такая форма организации действий, при которой одна последовательность действий выполняется несколько раз до тех пор, пока выполняются некоторые условия
Цикл включает несколько этапов:
1). Подготовка цикла (блок ”начальные присвоения“).
2). Тело цикла - последовательность действий, выполняемая в цикле.
3). ”Условие“ - содержит условие, при выполнении которого цикл работает, то есть выполняется тело цикла.
Пример.Группа студентов из N человек сдавала экзамен, и каждый получил оценку. Найти средний балл из оценок группы.
Таблица спецификаций:
Входные величины | Выходные величины | ||||
Имя | Назначение | Диапазон | Имя | Назначение | Диапазон |
N | Число студентов, сдававших экзамен | Целое число >2 и <25 | S | Средний балл группы | Действительное число >0 |
C | Вектор оценок из N элементов | Целые числа на [2,5] | M | Сообщение о неверном N | Текст |
M1 | Сообщение о неверной оценке | Текст |
Словесное описание алгоритма:
1. N=1
2. ПОКА N<=2 или N>25 ВЫПОЛНИТЬ
2.1. Ввод N
2.2. ЕСЛИ N<=2 или N>25 ТО
2.2.1. Вывод M.
ЕСЛИ ВСЕ
ПОКА ВСЕ
3. I=1 S=0.
4. ПОКА I<=N ВЫПОЛНИТЬ
4.1. C=1
4.2. ПОКА C<2 или C>5 ВЫПОЛНИТЬ
4.2.1. Ввод C
4.2.2. ЕСЛИ C<2 или C>5 ТО
4.2.2.1. Вывод M1
ЕСЛИ ВСЕ
ПОКА ВСЕ
4.3. S=S+C
4.4. I=I+1
ПОКА ВСЕ
5. S=S/N
6. Вывод S
Таблица тестов:
Номер теста | Назначение теста | Входные данные | Выходные данные |
Данные, соответствующие условию задачи | N=5 C=(3,4,5,2,3) | S=3.4 | |
Данные, не соответствующие условию задачи | N=30 | N неверно | |
Данные, не соответствующие условию задачи | N=6 C=(12,6,3,4,5,3) | Повторный ввод элементов массива |
Виды циклов в языке C#, их особенности