Задать вопрос
11 ноября, 21:46

Напишите в ответе наименьшее значение входной переменной k, при

котором программа выдаёт ответ 21. Для Вашего удобства программа

приведена на пяти языках программирования.

var

k, i : longint;

function f (n: longint) : longint;

begin

f : = n * n * n;

end;

function g (n: longint) : longint;

begin

g : = n*n;

end;

begin

readln (k) ;

i : = 1;

while f (i) < = k*g (i) do

i : = i+1;

writeln (i)

end.

+1
Ответы (2)
  1. 11 ноября, 23:10
    0
    Функция f преобразует число n в куб числа n

    функция g преобразует число n в квадрат числа n

    рассмотрим цикл:

    к переменной i будет прибавляться 1, только если i^3 < = k * i^2, то есть

    цикл действует только в случае, когда k > = i

    выйти из цикла мы должны со значением i = 21

    это может быть в одном случае:

    k = 20, i = 20, тогда выполним цикл и снова в него не войдем, поскольку 21^3 > 20 * 21^2

    Ответ: k = 20
  2. 12 ноября, 01:31
    0
    Рассмотрим, что делают функции.

    f (n) = n³; g (n) = n²

    В основной программе имеется цикл с предусловием, который выполняется до тех пор, пока записанное после while логическое выражение (в данном случает отношение) истинно. Делаем подстановку.

    f (i) ≤ k * g (i) ; i³ ≤ k * i² ⇒i ≤ k

    Первоначально i=1, а в цикле i наращивается на 1. Поскольку цикл прекратит выполнение при i > k, то для i=21 получаем k=20.
Знаете ответ?
Сомневаетесь в ответе?
Найдите правильный ответ на вопрос ✅ «Напишите в ответе наименьшее значение входной переменной k, при котором программа выдаёт ответ 21. Для Вашего удобства программа приведена ...» по предмету 📘 Информатика, а если вы сомневаетесь в правильности ответов или ответ отсутствует, то попробуйте воспользоваться умным поиском на сайте и найти ответы на похожие вопросы.
Смотреть другие ответы
Похожие вопросы по информатике