Предмет: Информатика,
автор: youonelove
Определите, что будет напечатано в результате работы следующего фрагмента программы:
program B05;
var n, s: integer;
begin
n := 0;
s := 1;
while s <= 1000 do begin
s := s * 3;
n := n + 3;
end;
write(n)
end.
Подробно, пожалуйста
Ответы
Автор ответа:
0
Цикл будет до тех пор пока s больше или равно 1000
s := 1; s := s * 3; то есть
s := 1; s := s * 3; то есть
3^1 = 3
3^2 = 9
3^3 = 27
3^4 = 81
3^5 = 243
3^6 = 729
3^7 = 2187 на 3^7 цикл прерывается поэтому 3*7=21
Автор ответа:
0
n=0, s=1
1 <= 1000 ⇒ true; s = s*3 = 1*3 =3, n = n+3 = 0+3 = 3
3 <= 1000 ⇒ true; s = 3*3 = 9, n = 3+3 = 6
9 <= 1000 ⇒ true; s = 9*3 = 27, n = 6+3 = 9
27 <= 1000 ⇒ true; s = 27*3 = 81, n = 9+3 = 12
81 <= 1000 ⇒ true; s = 81*3 = 243, n = 12+3 = 15
243 <= 1000 ⇒ true; s = 243*3 = 729, n = 15+3 = 18
729 <= 1000 ⇒ true; s = 729*3 = 2187, n = 18+3 = 21
2187 <= 1000 ⇒ false
На экран будет выведено значение n = 21
1 <= 1000 ⇒ true; s = s*3 = 1*3 =3, n = n+3 = 0+3 = 3
3 <= 1000 ⇒ true; s = 3*3 = 9, n = 3+3 = 6
9 <= 1000 ⇒ true; s = 9*3 = 27, n = 6+3 = 9
27 <= 1000 ⇒ true; s = 27*3 = 81, n = 9+3 = 12
81 <= 1000 ⇒ true; s = 81*3 = 243, n = 12+3 = 15
243 <= 1000 ⇒ true; s = 243*3 = 729, n = 15+3 = 18
729 <= 1000 ⇒ true; s = 729*3 = 2187, n = 18+3 = 21
2187 <= 1000 ⇒ false
На экран будет выведено значение n = 21
Похожие вопросы
Предмет: Литература,
автор: listopad117
Предмет: Математика,
автор: kira7877
Предмет: Алгебра,
автор: KiraKravchenk
Предмет: Физика,
автор: gymnasium44