Сообщение составит 32 * 2500 = 80000 бит = 10000 байт
Что им можно плавать только на дорожке номер 3
<h2>Уточнение</h2>
Если в выражении z:= (z + x/2)/2 всё-таки сначала высчитывается (z + x), а потом делится на 4, то ответ будет другой.
Но также влияет на ответ то, какой тип у x и z. Если они оба int, то дробная часть отбрасывается и в ответе получится также, если же тип double или float, то ответ будет другим.
<h2>Ответ</h2>
x = 39
z = 1, i = 0
z = (z + x/2)/2 = (1 + 39/2)/2 = 10.25
i = 0 + 1 = 1
1 < 4 - да
...
z = (10.25 + 39/2)/2 = 14.87500
i = 2
2 < 4 - да
...
z = (14.87500 + 39/2)/2 = 17.1875
i = 3
3 < 4 - да
...
z = (17.1875 + 39/2)/2 = 18.34375
i = 4
4 < 4 нет
<h3>z = 18.34375</h3>
Код ужасно кривой, но рабочий (надеюсь, принцип понятен):
1. Бензин
type
Benzin=class
public
money:double;
m:integer;
end;
var
b:Benzin;
begin
b:=new Benzin;
b.m:=0;
b.money:=20;
while b.money<22.0 do
begin
b.money:=b.money*1.02;
b.m:=b.m+1;
writeln('Сейчас бензин стоит: ',b.money);
writeln('Сейчас месяц прошел: ',b.m);
end;
end.
2. Вклад
type
biznes=class
public
money:double;
m:integer;
time:integer;
end;
var
b:biznes;
begin
b:=new biznes;
writeln('Напишите сумму рублей: ');
read(b.money);
writeln('Напишите кол-во месяцев: ');
read(b.m);
b.time:=0;
while b.time<b.m do
begin
b.money:=b.money*1.03;
b.time:=b.time+1;
writeln('Сейчас сумма: ',b.money);
writeln('Прошел месяц: ',b.time);
end;
end.
3. Тренировки
type
sport=class
public
first:double;
day:integer;
first2:double;
first3:double;
first4:double;
first5:double;
first6:double;
first7:double;
answer:double;
end;
var
s:sport;
begin
s:=new sport;
s.first:=5;
s.day:=1;
while s.day=1 do
begin
s.first2:=s.first*1.20;
s.day:=s.day+1;
writeln('Сейчас бегает: ',s.first2);
writeln('День: ',s.day);
end;
while s.day=2 do
begin
s.first3:=s.first2*1.20;
s.day:=s.day+1;
writeln('Сейчас бегает: ',s.first3);
writeln('День: ',s.day);
end;
while s.day=3 do
begin
s.first4:=s.first3*1.20;
s.day:=s.day+1;
writeln('Сейчас бегает: ',s.first4);
writeln('День: ',s.day);
end;
while s.day=4 do
begin
s.first5:=s.first4*1.20;
s.day:=s.day+1;
writeln('Сейчас бегает: ',s.first5);
writeln('День: ',s.day);
end;
while s.day=5 do
begin
s.first6:=s.first5*1.20;
s.day:=s.day+1;
writeln('Сейчас бегает: ',s.first6);
writeln('День: ',s.day);
end;
while s.day=6 do
begin
s.first7:=s.first6*1.20;
s.day:=s.day+1;
writeln('Сейчас бегает: ',s.first7);
writeln('День: ',s.day);
end;
while s.day=7 do
begin
s.answer:=s.first+s.first2+s.first3+s.first4+s.first5+s.first6+s.first7;
s.day:=s.day+1;
writeln('Ответ: ',s.answer);
end;
end.
1 пример.
Program zadacha; здесь путем ввода в программе будь-то
вручную через строку команды read(a);
Var a:Integer;
Begin
a:=155;
End.
2 пример. А здесь объявить константой.
Program zadacha2;
Const a=155;
Begin
Write(a);
End.