РУҚА
6

Количество значений переменной k

ЕГЭ · Информатика · Тапсырма 6 · Бағдарламалау негіздері
КүрделіФИПИ1D2ADCҚысқа жауап≈ 5 минутЖауап сверен с ключом

Рассмотрите программу, в которой функция $f(n)=n^3$. Программа получает целое число $k$, находит ближайшее к нему значение среди соседних кубов и выводит соответствующий индекс. Определите количество различных значений входной переменной $k$, при которых программа выводит тот же результат, что и при $k=12$. Значение $k=12$ также включается в подсчёт.

Python
1def f(n):
2    return n * n * n
3
4i = 1
5k = int(input())
6while f(i) < k:
7    i += 1
8if f(i) - k <= k - f(i - 1):
9    print(i)
10else:
11    print(i - 1)
Условие как в банке ФИПИ — открыть и сверить
Дұрыс жауапты жазыңыз.

Напишите в ответе число, равное количеству различных значений входной переменной k, при которых приведённая ниже программа выводит тот же жауап, что и при входном значении k = 12. Значение k = 12 также включается в подсчёт количества различных значений k. Для Вашего удобства программа приведена на пяти языках программирования.

Бейсик

DIM K, I AS LONG

INPUT K

I = 1

WHILE F(I) < K

I = I + 1

WEND

IF F(I)- K <= K - F(I - 1) THEN

PRINT I

ELSE

PRINT I - 1

END IF

FUNCTION F(N)

F = N * N * N

END FUNCTION


Python

def f(n):

return n * n * n

i = 1

k = int(input())

while f(i) < k:

i+=1

if (f(i)- k <= k - f(i - 1)):

print(i)

else:

print(i - 1)

Алгоритмический тіл

алг

нач

цел i, k

ввод k

i := 1

нц пока f(i) < k

i := i + 1

кц

если f(i) - k <= k - f(i - 1) то

вывод i

иначе

вывод i - 1

все

кон

алг цел f(цел n)

нач

знач := n * n * n

кон

Паскаль

var

k, i: longint;

function f(n: longint): longint;

begin

f := n * n * n;

end;

begin

readln(k);

i := 1;

while f(i) < k do

i := i + 1;

if f(i)- k <= k - f(i - 1) then

writeln(i)

else

writeln(i - 1);

end.


С++

#include <iostream>

using namespace std;

long f(long n) {

return n * n * n;

}

int main()

{

long k, i;

cin >> k;

i = 1;

while (f(i) < k)

i++;

if (f(i) - k <= k - f(i - 1)){

cout << i;

} else {

cout << i - 1;

}

return 0;

}



Сіздің жауабыңыз

Формат: өлшем бірліктері жоқ сан немесе сөз; бөлшек бөлігін үтірмен бөліңіз.

!
3 уровня: от лёгкого толчка до почти готового решения. Следующий открывается, алдыңғысы оқылған кезде, — жауапқа бірден секіріп кетпеу үшін.
1Мягкая — с чего смотретьдеңгей 1 из 3

Сначала определите, какой результат программа выдаёт при $k=12$.

2Жетекші — қандай сандарды есептеудеңгей 2 из 3

После завершения цикла выполняется $f(i-1)<k\leq f(i)$. Затем выбирается ближайший из индексов $i-1$ и $i$.

3Тікелей — іс жүзінде шешімдеңгей 3 из 3

При $k=12$ программа выводит $2$. Для $i=2$ подходят значения $k=5,6,7,8$, а для $i=3$ — значения $k=9,10,11,12,13,14,15,16,17$.

Всё равно не складывается?Полное Шешім с обоснованием каждого шага — на отдельной странице.
Шешімді ашу

Тапсырма 6 ЕГЭ, информатика

Задача из темы «Бағдарламалау негіздері»: в ней 160 задач жауабымен және қадамдық талдауымен. В 6-м номере бланка — 156 задач.

Жауапты осы жерде тексеруге болады, ал егер шықпаса — ашуға болады көмекші кеңес немесе талдау. Тіркелу қажет емес.