Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Примеры блок-схем для конкретных задач.pdf
Скачиваний:
97
Добавлен:
13.03.2016
Размер:
846.14 Кб
Скачать

Циклическая алгоритмическая конструкция

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

Группа повторяющихся действий цикла называется телом цикла.

Существует три типа циклов: цикл с параметром (арифметический), цикл с предусловием и цикл с постусловием.

Цикл с параметром

В цикле с параметром число повторений цикла однозначно определено и задается с помощью начального, конечного значений параметра и шагом его изменения.

i= 1, N, 1

Тело цикла

Рис. 5 Цикл с параметром

9

ПРИМЕР 3. Разработать алгоритм программы, которая выводит таблицу

квадратов первых десяти целых положительных чисел.

2. Листинг программы program kvadrat;

uses crt ;

var Y, i: integer ; begin

clrscr;

writeln ('Таблица квадратов'); for i:=1 to 10 do

begin

 

Y:=i*i;

 

writeln (i, '

',Y)

end;

 

readln;

 

end.

 

3. Тестирование

Результат выполнения

Ожидаемый

программы

результат

 

1

1

1

1

2

4

2

4

3

9

3

9

4

16

4

16

5

25

5

25

6

36

6

36

7

49

7

49

8

64

8

64

9

81

9

81

10

100

10

100

 

 

 

 

1. Блок-схема

Начало

i= 1, 10

Y=i*i

Вывод Ki,

Конец

Y

 

10

4. Результат выполнения программы

Цикл с предусловием

Действия внутри этого цикла повторяются, пока выполняется условие в

блоке ветвления, причем сначала проверяется условие, а затем выполняется

действие.

Нет

Условие

Да

Тело цикла

Рис. 6 Цикл с предусловием

11

ПРИМЕР 4. Найти значение всех Y = X3 - 5 при Х, изменяющемся от 1 до 10 с

шагом 2.

2. Листинг программы program d;

uses crt ; var

x, y: integer; begin

clrscr;

x:=1;

while x<10 do begin y:=sqr(x)*x - 5;

writeln('x= ', x, ' y=', y); x:=x+2;

end;

readln;

end.

1. Блок-схема

Начало

Х = 1

Да

Х > 10

Нет

Y = X3 – 5

Вывод Х, Y

Х = Х + 2

Конец

3. Тестирование

Результат выполнения программы

Ожидаемый результат

 

 

 

 

x=1

y=-4

x=1

y=-4

x=3

y=4

x=3

y=4

x=5

y=120

x=5

y=120

x=7

y=338

x=7

y=338

x=9

y=724

x=9

y=724

12

4. Результат выполнения программы

Цикл с постусловием

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

Оно будет выполняться до тех пор, пока значение условного выражения ЛОЖНО. Как только условное выражение принимает значение ИСТИНА, цикл завершается.

Тело цикла

Нет

Условие

Да

Рис. 7 Цикл с постусловием

13

ПРИМЕР 5. Написать программу, определяющую максимум в

последовательности вводимых с клавиатуры положительных чисел. Как только

введено отрицательное число или 0, программа завершается.

2. Листинг программы program maximum; uses crt ;

var a, max: integer ; begin

clrscr;

writeln ('Определение максимального числа');

writeln ('Вводите последовательность чисел');

writeln ('Программа завершается после ввода отрицательного числа или 0');

max:=0; repeat

readln (a);

if a>max then max:=a; until a<=0;

writeln ('Максимальное число', max);

readln;

end.

1. Блок-схема

Начало

max = 0

Ввод a

Нет a > max

Да

max=a

Нет

Да

 

a 0

Вывод max

Конец

3. Тестирование

Введенные числа

Результат выполнения программы

Ожидаемый

 

 

результат

2 3 9 1 10 0

Максимальное число 10

10

 

 

 

14

4. Результат выполнения программы

15