Алгоритм называется циклическим, если он содержит многократное выполнение одних и тех же операторов при различных значениях промежуточных данных. Число повторений этих операторов может быть задано в явной (цикл с известным заранее числом повторений) или неявной (цикл с неизвестным заранее числом повторений) форме.
Задания уровня 1 Задание 1 Программа выводит на экран диапазон чисел.
Блок-схема
2
8
7
6
5
4
3
1
Код
Program CIKL;
Var {Описание параметров цикла}
i: integer;
c: char;
b: boolean;
begin
{Вывод на печать целых чисел от 1 до 10}
for i:=1 to 10 do writeln (i);
{Вывод на печать целых чисел от 10 до -10}
for i:=10 downto -10 do
writeln (i);
{Вывод на печать латинских символов от a до r}
{Параметр цикла изменяется от a до r в алфавитном порядке}
for c:='a' to 'r' do writeln (c);
end.
Задание 2 Тест по таблице умножения: ученику задается ровно пять вопросов и в конце тестирования выставляется оценка по пятибалльной системе.
1
Блок-схема
18
17
16
15
14
13
12
11
9
8
7
6
5
4
3
2
Код
Program TABL;
uses CRT; {Подключаем графический модуль}
var sl, s2, otvet, k, prav: integer; {s1,s2-сомножители, otvet-ответ ученика, prav - пр. ответ }
begin
randomize; (Инициализация датчика случайных чисел)
clrscr; (Очистка экрана)
for k:=1 to 5 do
begin
sl:= random(18)+2; s2:= random(18)+2;{s1,s2 - случайные числа в диапозоне от до 19)
write ('Сколько будет ', sl, ' * ', s2, '?);
readIn (otvet) ;
if otvet=s1*s2 then
begin
write('Правильно! ');
prav:=prav+1;
end
else write(' Неверно... ');
end;
if prav < 3 then prav:=2;
clrscr; (Очистка экрана)
writeln(' Ваша оценка: ' , prav);
end.