Напишите в ответе число различных значений входной переменной k, при которых программа выдаёт тот же ответ, что и при входном значении k = 36. Значение k = 36 также включается в подсчёт различных значений k. Для Вашего удобства программа приведена на пяти языках программирования.
| Бейсик | Python |
|---|---|
DIM K, I AS LONG INPUT K I = 0 WHILE F(I) < K I = I + 1 WEND PRINT I FUNCTION F(N) F = N*(N-1)+10 END FUNCTION
| def f(n): return n*(n-1)+10 k = int(input()) i = 0 while f(i) < k: i = i + 1 print(i)
|
| Паскаль | Алгоритмический язык |
var k, i : longint; function f(n: longint) : longint; begin f := n*(n-1)+10 end; begin readln(k); i := 0; while (f(i) < k) do i := i+1; writeln(i) end.
| алг нач цел i, k ввод k i := 0 нц пока f(i) < k i := i+1 кц вывод i кон алг цел f(цел n) нач знач := n*(n-1)+10 кон |
| Си++ | |
#include <iostream> using namespace std; long f(long n) { return n*(n-1)+10; } int main() { long k, i; cin >> k; i = 0; while (f(i) < k) i++; cout << i << endl; }
| |
При k = 36 программа выведет число 6. Переменная k отвечает за количество выполнений цикла
«while (f(i) < k) do
i := i+1;».
Запишем неравенство: Для того, чтобы результат вывода программы был равен 6 при
неравенство ещё должно выполняться, а при
уже нет. Получаем двойное неравенство:
То есть нам подходят десять чисел.
Ответ: 10.

