Определите, что будет напечатано в результате работы следующего фрагмента программы: 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) ...
Определите, что будет напечатано в результате работы следующего фрагмента программы:
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.
Подробно, пожалуйста
Ответ(ы) на вопрос:
Гость
Цикл будет до тех пор пока s больше или равно 1000
s := 1; s := s * 3; то есть
3^1 = 33^2 = 93^3 = 273^4 = 813^5 = 2433^6 = 7293^7 = 2187 на 3^7 цикл прерывается поэтому 3*7=21
Гость
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
Не нашли ответ?
Похожие вопросы