Предмет: Информатика, автор: pianist30

При каком наибольшем введенном числе d после выполнения программы будет напечатано 55?

var n, s, d: integer;

begin

readln(d);

n := 0;

s := 0;

while s <= 365 do begin

s := s + d;

n := n + 5

end;

write(n)

end.

Ответы

Автор ответа: Lukky
0

55:5=11

365:11≈33(34) берём "34", чтобы перехлестнуть 365.

Так как 11-ый член является замыкающим (перехлёстывающим 365), тогда смотрим по ближайшим:

34*10=340 (340+34=374) - подходит, но это не максимум!

365 mod 10= 36, а это значит, что последующий член будет больше 365, а именно 395.

В задании сказано, что d должно быть максимальным, а "34" - это допустимое, но не максимально число, удовлетворяющее условию, даже минимальное (по результату).

Проверка:

34*11=374, значит, когда на экране выведется s:=340, n:=50, то, зайдя по следующему циклу, получится, что s:= 374, n:=55. На следующий цикл программа не пойдёт.

Ответ: d=34. 

Автор ответа: pianist30
0
я вот так же сделал, а ответ почему то в книжке 36
Автор ответа: Lukky
0
Точно!
Автор ответа: Lukky
0
Сейчас!
Автор ответа: pianist30
0
я тож понял, счетчик это н равный 11
Похожие вопросы