Информатика / new_al
.pdf4. Цикл с предусловием
Пример 4. Дана блок-схема (рис. 14). Какое значение бу-
дет иметь N на выходе, если:
а) S=1,1; б) S=2,09?
Рис. 14
Для определения результата воспользуемся трассировоч-
ными таблицами (а, б):
а) S=1,1:
Шаг |
1 |
2 |
3 |
|
Значение S1 |
0 |
1 |
1,5 |
|
Значение N |
0 |
1 |
2 |
|
Тело цикла |
0 < 1,1 (Да) |
1 < 1,1 (Да) |
1,5 < 1,1 (Нет) |
|
Результат |
N=0+1=1 |
N=1+1=2 |
N = 2 |
|
выполнения |
S1=0+1/1=1 |
S1=1+1/2=1,5 |
||
|
||||
Вывод |
|
|
2 |
|
значения N |
|
|
||
|
|
|
21
б) S=2,09:
Шаг |
1 |
2 |
3 |
4 |
5 |
6 |
|
|
|
|
|
|
|
|
|
Значение |
0 |
1 |
1,5 |
1,8333 |
2,0833 |
2,2833 |
|
S1 |
|
|
|
|
|
|
|
Значение |
0 |
1 |
2 |
3 |
4 |
5 |
|
N |
|
|
|
|
|
|
|
Шаг |
0 < 2,09 (Да) |
1 < 2,09 |
1,5<2,09 (Да) |
1,83333<2,09 |
2,0833<2,09 (Да) |
2,2833 < 2,09 |
|
(Нет) |
|||||||
|
|
(Да) |
|
(Да) |
|
||
Результат |
N=0+1=1 |
N=1+1=2 |
N=2+1=3 |
N=3+1=4 |
N=4+1=5 |
|
|
S1=1+1/2 = |
S1=1,5+1/3= |
S1=1,8333+1/4 = |
N = 5 |
||||
выполне- |
S1=0+1/1=1 |
S1=2,0833+1/5= |
|||||
ния |
|
1,5 |
1,8333 |
2,0833 |
2,2833 |
|
|
|
|
|
|
|
|
|
|
Вывод |
|
|
|
|
|
5 |
|
значения |
|
|
|
|
|
||
N |
|
|
|
|
|
|
21
5. Цикл с постусловием
Пример 5. Дана блок-схема (рис. 15). Какое значение бу-
дет иметь z на выходе, если: а) x=2; б) x=4; в) x=6?
Рис. 15
Для определения результата воспользуемся трассировоч-
ными таблицами (а, б, в):
а) x=2:
Шаг |
1 |
2 |
3 |
4 |
|
Начальное |
1 |
1 |
1 |
1 |
|
значение z |
|||||
|
|
|
|
||
Значение i |
0 |
1 |
2 |
3 |
|
Результат |
z = |
z = |
z = |
z = |
|
выполнения |
|||||
(1+2/2)/2=1 |
(1+2/2)/2=1 |
(1+2/2)/2=1 |
(1+2/2)/2=1 |
||
z |
|
|
|
|
|
Результат |
|
|
|
|
|
выполнения |
i = 0+1=1 |
i = 1+1=2 |
i = 2+1=3 |
i = 3+1=4 |
|
i |
|
|
|
|
|
Тело цикла |
1 < 4 (Да) |
2 < 4 (Да) |
3 < 4 (Да) |
4 < 4 (Нет) |
|
Вывод z |
|
|
|
1 |
22
б) x=4:
Шаг |
|
1 |
|
2 |
|
|
3 |
|
4 |
|
Начальное |
|
1 |
|
1,5 |
|
|
1,75 |
|
1,875 |
|
значение z |
|
|
|
|
|
|
|
|
|
|
Значение i |
|
0 |
|
1 |
|
|
2 |
|
3 |
|
|
|
|
|
|
|
|
|
|
|
|
Результат |
|
z = |
z = |
|
z = |
|
z= |
|||
|
(1+4/2)/2= |
|
(1,5+4/2)/2= |
|
(1,75+4/2)/2= |
(1,875+4/2)/2= |
||||
выполне- |
|
|
|
|||||||
ния z |
|
1,5 |
|
1,75 |
|
|
1,875 |
|
1,9375 |
|
|
|
|
|
|
|
|
|
|
|
|
Результат |
|
i = 0+1=1 |
i = 1+1=2 |
|
i = 2+1=3 |
|
i = 3+1=4 |
|||
выполне- |
|
|
|
|||||||
ния i |
|
|
|
|
|
|
|
|
|
|
Тело цикла |
|
1 < 4 (Да) |
2 < 4 (Да) |
|
3 < 4 (Да) |
|
4 < 4 (Нет) |
|||
|
|
|
|
|
|
|
|
|
|
|
Вывод z |
|
|
|
|
|
|
|
|
1,9375 |
|
|
|
|
|
|
|
|
|
|
|
|
в) x=6: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
Шаг |
1 |
|
2 |
|
3 |
4 |
|
|||
|
|
|
|
|
|
|
|
|||
Начальное |
1 |
|
2 |
|
2,5 |
2,75 |
|
|||
значение z |
|
|
|
|
|
|
|
|
|
|
Значение i |
0 |
|
1 |
|
2 |
3 |
|
|||
|
|
|
|
|
|
|
|
|
|
|
Результат |
z = |
|
z = |
|
|
z = |
|
z= |
||
выполнения |
(1+6/2)/2= |
|
(2+6/2)/2= |
|
(2,5+6/2)/2= |
(2,75+6/2)/2= |
|
|||
z |
2 |
|
2,5 |
|
2,75 |
2,875 |
|
|||
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
Результат |
i = 0+1=1 |
|
i = 1+1=2 |
|
|
i = 2+1=3 |
|
i = 3+1=4 |
||
выполнения |
|
|
|
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
Тело цикла |
1 < 4 (Да) |
|
2 < 4 (Да) |
|
|
3 < 4 (Да) |
4 < 4 (Нет) |
|
||
|
|
|
|
|
|
|
|
|
||
Вывод z |
|
|
|
|
|
|
2,875 |
|
||
|
|
|
|
|
|
|
|
|
|
|
23
ЗАДАЧИ ДЛЯ САМОСТОЯТЕЛЬНОГО РЕШЕНИЯ
1. Задачи на линейный алгоритм
Задача 1. Реализован некоторый алгоритм в виде блок-
схемы (рис. 16). Найти А, В на выходе блок-схемы, если изна-
чально:
а) А=0, В=0;
б) А=0, В=5;
в) А=10, В=20;
г) А=10, В=10.
Рис. 16
Задача 2. Даны длины двух катетов (a, b) прямоугольного треугольника. Определить периметр этого треугольника (P) (см.
блок-схему на рис. 17), если:
а) a=3, b=4;
б) a=0, b=3;
в) a=6, b=8;
г) a=9, b=12.
Рис. 17
24
Задача 3. Реализован некоторый алгоритм в виде блок-
схемы (рис. 18). По данной блок-схеме вычислить S, если:
а) a=1, b=2, c=3;
б) a=9, b=0, c=1;
в) a=5, b=6, c=9.
Рис. 18
Задача 4. Дана блок-схема (рис.19). Начальные условия: a=8, b=2. Тогда после исполнения алгоритма значение перемен-
ной g будет равно …
Рис. 19
25
2. Задачи на разветвляющийся алгоритм
x, x 0
Задача 5. Вычислить значение функции: y
x2, x 0
(см. блок-схему на рис. 20), если: а) x=0; б) x=1; в) x= – 5.
Рис. 20
Задача 6. Используя блок-схему (рис. 21), найти корни
уравнения ax2 bx c 0 (a 0), если:
а) a=1, |
b=2, |
c= – 3; |
б) a=1, |
b=4, |
c=5; |
в) a=3, |
b= – 8, c=3. |
Рис. 21
26
Задача 7. Реализован некоторый алгоритм в виде блок-
схемы (рис. 22). Что получится на выходе блок-схемы, если:
а) x=0, y=1; б) x=2, y=4; в) x=6, y=0?
Рис. 22
Задача 8. На блок-схеме (рис. 23) представлен алгоритм вычисления стоимости покупки с учетом скидки, где a – цена, b
– количество, s – сумма. Какой будет результат на выходе блок-
схемы, если:
а) a=50, |
b=8; |
б) a=200, |
b=5; |
в) a=300, |
b=1; |
г) a=800, |
b=4? |
Рис. 23
27
3. Задачи на цикл с предусловием
Задача 9. На блок-схеме (рис. 24) представлен алгоритм Евклида, определяющий наибольший общий делитель (НОД)
для двух натуральных чисел A и B. Найти А на выходе блок-
схемы, если:
а) A=5, B=10;
б) A=8, B=8;
в) A=12, B=4;
г) A=16, B=36.
Рис. 24
Задача 10. Реализован некоторый алгоритм в виде блок-
схемы (рис. 25). Что получится на выходе блок-схемы, если:
а) n=2; б) n=0,5?
28
Рис. 25
Задача 11. Дана блок-схема (рис. 26). Тогда после испол-
нения алгоритма переменная i примет значение …
Рис. 26
29