Задание EGEINF616B25: Выполнение и анализ программы

ФИПИ · ЕГЭ · все форматы ответа · 2475 заданий

Открыть решение ↓ Ошибка или пожелание

Тип задачи: Выполнение и анализ программы.

Учебные темы: Определение возможных результатов работы простейших алгоритмов управления исполнителями и вычислительных алгоритмов. Определение исходных данных, при которых алгоритм может дать требуемый результат.

Впишите правильный ответ.

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

С++

Python

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

Паскаль

#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;

}

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.

 



i
СВОЙСТВА ЗАДАНИЯ
КЭС:
3.1 Формализация понятия алгоритма. Машина Тьюринга как универсальная модель вычислений
Тип ответа:Краткий ответ
Номер: 616B25
НЕ РЕШЕНО Ответить

Решение задания EGEINF616B25

Ответ: 248

Каждый проход берёт остаток от деления текущего x на 2 и затем отбрасывает эту последнюю цифру целочисленным делением на 2. Поэтому M равно количеству цифр исходного числа в системе с основанием 2. Нужно ровно 8 цифр, первая из которых ненулевая.
Основание чётное, поэтому чётность текущего x совпадает с чётностью его последней цифры. Значит, L считает количество нечётных цифр. Начальное L = 0, требуемое конечное L = 5.
В двоичной записи должно быть 5 единиц и 3 нулей.
При одинаковой длине первым сравнивается старший различающийся разряд. Поэтому для максимума единицы ставим как можно левее, затем все нули.
Получаем 11111000 (основание 2). Перестановка, которая улучшала бы число, нарушит этот порядок или ведущую единицу.
Переведём запись в десятичную систему: 1 · 2⁷ + 1 · 2⁶ + 1 · 2⁵ + 1 · 2⁴ + 1 · 2³ + 0 · 2² + 0 · 2¹ + 0 · 2⁰ = 248.
Проверка: цифр 8, учитываемые цифры — 1, 1, 1, 1, 1. Их количество равно 5. Значит, программа выводит 5, затем 8.
Ответ: 248.

Помочь улучшить сайт

Напишите пожелание к сайту или решению либо сообщите о найденной неточности в задании EGEINF616B25.

Сообщение увидит только команда сайта: на странице оно не публикуется.

Комментарии к решению

Комментарии видны всем посетителям сайта.

Комментариев пока нет. Будьте первым.

Чтобы оставить комментарий, войдите или зарегистрируйтесь.