При каком наименьшем значении входной переменной k программа выдаёт тот же ответ, что и...

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

При каком наименьшем значении входной переменной k программа выдаёт
тот же ответ, что и при входном значении k = 64? Для Вашего удобства
программа приведена на пяти языках программирования.
Паскаль
var k, i : longint;
function f(n: longint) : longint;
begin
f := n * n - 20
end;
begin
readln(k);
i := 12;
while (i>0) and (f(i)> k) do
i := i-1;
writeln(i)
end.


Информатика (29 баллов) | 116 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

При k = 64 про­грам­ма вы­ве­дет число 6. Пе­ре­мен­ная k от­ве­ча­ет за ко­ли­че­ство вы­пол­не­ний цикла«while (i>0) and (f(i)>=k) doi := i-1;».За­пи­шем не­ра­вен­ство:  Для того, чтобы ре­зуль­тат вы­во­да про­грам­мы был равен 6 при  не­ра­вен­ство ещё долж­но вы­пол­нять­ся, а при  уже нет. По­лу­ча­ем двой­ное не­ра­вен­ство: То есть нам под­хо­дит 13 чисел. Ответ: 13.

(2.6k баллов)