• Предмет: Информатика
  • Автор: eagapitowa2013
  • Вопрос задан 6 лет назад

Прошу, помогите, срочно!
Сколько существует значений s, подаваемых на вход программе, при которых в результате работы программы на экран будет выведено значение 125?
var n, s: integer;
begin
n :=1;
readln(s);
while s > n do begin
s :=s - 15;
n := n * 5
end;
write(n)
end.

Ответы

Ответ дал: vimmortal2
2

Ответ:

Существует 115 значений s, при которых будет выведено значение 125.

Объяснение:

Дополним код некоторыми действиями, чтобы найти кол-во значений автоматически:

var n, s: integer;

count, i: integer;

begin

 count := 0;

 for i := 0 to 10000 do begin

   s := i;

   n :=1;

   while s > n do begin

     s :=s - 15;

     n := n * 5

   end;

   if n = 125 then count += 1;

 end;

 writeln(count);

end.

Код выведет число 115.

Как оно работает? В начале регистрируются переменные n, s, count, i типа integer. Далее - начинается основной код. Переменной count присваивается 0 - это и будет количество этих чисел. С помощью переменной for имитируем ввод чисел: переменной i каждый раз будет присваиваться число от 0 до 10000 (этого будет предостаточно). Переменной s присваивается число i. Далее выполняется код из условия, а в конце проверка - равняется ли выведенное число 125. Если так, то значение переменной count увеличивается на единицу. В конце - вывод count.

Вас заинтересует