РУҚА
22

Анализ алгоритма деления

ЕГЭ · Информатика · Тапсырма 22 · Алгоритмдер және орындаушылар
КүрделіФИПИ47C6D9Қысқа жауап≈ 3 минутЖауап сверен с ключом

Ниже на пяти языках программирования записан алгоритм. Получив на вход число $x$, этот алгоритм печатает два числа: $L$ и $M$. Алгоритм повторяет действия, пока $x > 0$: увеличивает $M$ на 1, увеличивает $L$ на 1, если текущее значение $x$ чётное, затем заменяет $x$ на результат целочисленного деления на 2. Найдите наименьшее число $x$, при вводе которого алгоритм печатает сначала 6, а потом 7.

Python
1x = int(input())
2L = 0
3M = 0
4while x > 0:
5    M = M + 1
6    if x % 2 == 0:
7        L = L + 1
8    x = x // 2
9print(L)
10print(M)
Условие как в банке ФИПИ — открыть и сверить
Дұрыс жауапты жазыңыз.

Ниже на пяти языках программирования записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа: L и M. Укажите наименьшее число x, при вводе которого алгоритм печатает сначала 6, а потом 7.

Бейсик

Python

DIM X, L, M AS INTEGER

INPUT X

L = 0

M = 0

WHILE X > 0

M = M + 1

IF X MOD 2 = 0 THEN

L = L + 1

ENDIF

X = X \ 2

WEND

PRINT L

PRINT M

x = int(input())

L = 0

M = 0

while x > 0:

M = M + 1

if x % 2 == 0:

L = L + 1

x = x // 2

print(L)

print(M)

Алгоритмический язык

Паскаль

алг

нач

цел x, L, M

ввод x

L := 0

M := 0

нц пока x > 0

M := M + 1

если mod(x,2) = 0

то

L := L + 1

все

x := div(x,2)

кц

вывод L, нс, M

кон

var x, L, M: integer;

begin

readln(x);

L := 0;

M := 0;

while x > 0 do

begin

M := M + 1;

if x mod 2 = 0 then

L := L + 1;

x := x div 2;

end;

writeln(L);

writeln(M);

end.


С++

#include <iostream>

using namespace std;

int main()

{

int x, L, M;

cin >> x;

L = 0;

M = 0;

while (x > 0){

M = M + 1;

if(x % 2 == 0){

L = L + 1;

}

x = x / 2;

}

cout << L << endl << M << endl;

return 0;

}



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

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

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

Сколько раз выполняется цикл для числа с определённой длиной двоичной жазбалар?

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

При последовательном делении на 2 число итераций равно количеству цифр в двоичной жазбалар числа.

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

Нужно получить 7 итераций и ровно 6 чётных значений $x$. Минимальное подходящее число — $1000000_2 = 64$.

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

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

Задача из темы «Алгоритмдер және орындаушылар»: в ней 432 задачи жауабымен және қадамдық талдауымен. В 22-м номере бланка — 101 задача.

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