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

Сколько различных значений числа d можно ввести, чтобы после выполнения программы было напечатано 171?

var n, s, d: integer;
begin
readln(d);
n := 27;
s := 12;
while s <= 2019 do begin
s := s + d;
n := n + 16
end;
write(n)
end.

Ответы

Автор ответа: kprof
17
Чтоб получить на выходе 171 составим уравнение:
27 + 16x = 171
x = 9 - это значит цикл должен выполниться 9 раз.

Чтоб цикл выполнился 9 раз составим неравенство исходя из условия s<=2019:
(2019-12)9 = 223 - это знаит при d=223 цикл выполнится 10 раз (так как при 9 разе s=2019 и цикл выполнится еще раз). Прибавим 1 к 223 и получим начальное значение при котором результат будет 171.

Далее узнаем конечное значение:
(2012-12)/x = 8
x= 250 - это последнее значение, при котором результат будет 171. При d = 251 - не будет 171. 
Ответ: [224;250] . Всего 27 значений

Похожие вопросы