Написать программу с использованием цикла while. Через каждые пять секунд каждая амеба...

0 голосов
34 просмотров

Написать программу с использованием цикла while. Через каждые пять секунд каждая амеба делиться на две амебы. Изначально была 1 амеба. Сколько амеб будет через N секунд? Проверить решение для 10, 25, 72 секунд.

Информатика (12 баллов) | 34 просмотров
Дан 1 ответ
0 голосов

Это просто! Вот решение:

Var n,a,time:integer;
Begin
Readln(n);
a:=1;time:=0;
while time
if frac(time/5)=0 then a:=a*2;
time:=time+1;            //èëè âìåñòî ýòîãî " Inc(time); "
End;
Writeln(a);
End.


И результаты проверки:
10 секунд: 4 амёбы
25 секунд: 32 амёбы
72 секунды: 32768 амёбы


(30 баллов)
0

Небошльшая ошибочка в кодировке вышла... В общем, вместо " time:=time+1; " можно написать " Inc(time); "

0

Можете без функции time сделать?

0

Это не функция, аназвание переменной ;)

0

Если не нравится time, то можно все time в коде поменять, например на t))