desktop/inf.jpg mobile/inf.jpg

Задание 22. Графы. Подсчёт количества программ. ЕГЭ 2021 по информатике

За это задание ты можешь получить 1 балл. На решение дается около 7 минут. Уровень сложности: повышенный.
Средний процент выполнения: 51.9%
Ответом к заданию 22 по информатике может быть цифра (число) или слово.

Задачи для практики

Задача 1

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

Решение

Проанализируем, что происходит в результате выполнения данной программы. Для этого в качестве x рассмотрим произвольное целое число, входящее в диапазон типа объявленной переменной (в нашем случае −32768 ≤ x ≤ 32767), например, 412.

Выполняемый оператор x a b k
readln(x) 412
a := 0 412 0
b := 10 412 0 10
логическое условие x > 0 истинно (412 > 0)
k := x mod 10 412 0 10 2
a := a + k 412 2 10 2
логическое условие k < b истинно (2 < 10)
b := k 412 2 2 2
x := x div 10 41 2 2 2
логическое условие x > 0 истинно (41 > 0)
k := x mod 10 41 2 2 1
a := a + k 41 3 (= 2 + 1) 2 1
логическое условие k < b истинно (1 < 2)
b := k 41 3 1 1
x := x div 10 4 3 1 1
логическое условие x > 0 истинно (4 > 0)
k := x mod 10 4 3 1 4
a := a + k 4 7 (= 3 + 4) 1 4
логическое условие k < b ложно (4 6< 1)
x := x div 10 0 7 1 4
логическое условие x > 0 ложно (0 6> 0)
writeln(a) 0 7 1 4
writeln(b) 0 7 1 4

Заметим, что a принимает значение, равное сумме цифр числа x, а переменная b — наименьшей цифре числа x.

Из условия задачи имеем:

1) a = 15, значит, сумма цифр исходного числа x равна 15;

2) b = 7, значит, в исходном числе x наименьшая цифра равна 7.

В наименьшем из таких чисел x цифра, стоящая в старшем разряде, должна быть наименьшей, то есть 7 (мы определили, что эта цифра наименьшая в числе). Тогда сумма цифр, расположенных правее 7 равна 15 − 7 = 8. Так как 8 < 10, а нам требуется найти наименьшее число, то исходное число является двузначным, и в разряде единиц у него стоит 8.

Значит, числом x, удовлетворяющим условию задачи, является 78.

Ответ: 78
Показать решение
Полный курс

Задача 2

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

Решение

Решение на С++

for (int i = 1; i < 10000; ++i) {
int x = i, a = 0, b = 0;
while (x > 0){
a++;
if (x % 2 != 0) b++;
x /= 2;
}
if (b == 3 && a == 7)
cout << i << " "; // выводим то, что "вводили"
}
Ответ: 67
Показать решение
Полный курс

Задача 3

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

Решение

Проанализируем работу алгоритма.

На каждой итерации цикла значение переменной a увеличивается на 1.

Далее значение этой переменной не изменяется. Следовательно, по окончании работы программы значение переменной a будет равно количеству итераций цикла. Согласно условию a = 5.

Цикл выполняется до тех пор, пока значение переменной x > 0. На каждой итерации цикла переменная x с помощью оператора целочисленного деления на 2 (x:=x div 2) уменьшается в два раза. Так как a = 5, то исходное число не превышает 25 = 32 и больше, чем 24 = 16.

Условие x mod 2 = 0 проверяет, является ли число x чётным. В том случае, когда условие истинно, к переменной b прибавляется единица (b:=b+1). Следовательно, в результате работы алгоритма значение переменной b будет равно количеству чётных чисел, полученных в результате последовательного деления исходного числа x на 2.

Рассмотрим случай, когда исходное число x = 32. В этом случае будет выполнено 6 итераций цикла while, в результате переменная x будет последовательно принимать значения 32, 16, 8, 4, 2, 1. В результате выполнения алгоритма переменная a примет значение 6, переменная b — 5.

Если исходное число x = 31, то получим последовательность: 31, 15, 7, 3, 1. В этом случае получим a = 5, b = 0.

Далее, когда мы последовательно будем уменьшать исходное число x от 30 до 16, значение переменной a будет равно 5, а значение переменной b будет изменяться в диапазоне от 0 до 4.

Так при x = 30, получим последовательность: 30, 15, 7, 3, 1. В этом случае a = 5, b = 1.

При x = 29 получим последовательность: 29, 14, 7, 3, 1. В этом случае a = 5, b = 1.

При x = 28 получим последовательность: 28, 14, 7, 3, 1. В этом случае a = 5, b = 2.

Согласно условию требуется указать наибольшее из таких чисел x, при вводе которого после окончания выполнения алгоритма b = 2, a = 5. Искомым числом является 28.

Ответ: 28
Показать решение
Полный курс

Задача 4

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

Решение
Ответ: 1003
Показать решение
Полный курс

Задача 5

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

Решение
Ответ: 149
Показать решение
Полный курс

Задача 6

На картинке на пяти языках записан алгоритм. Получив на вход число x, этот алгоритм печатает число M. Известно, что x > 80. Укажите такое (то есть большее 80) наименьшее число x, при вводе которого алгоритм печатает 21.

Решение
Ответ: 105
Показать решение
Полный курс

Задача 7

На рисунке на пяти языках записан алгоритм. Получив на вход число x, этот алгоритм печатает число M. Известно, что x > 90. Укажите такое (то есть большее 90) наименьшее число x, при вводе которого алгоритм печатает 20.

Решение
Ответ: 100
Показать решение
Полный курс
Показать еще

Готовим к ЕГЭ на 85+ баллов и побеждаем лень

Каждый месяц 12 онлайн-занятий в дружелюбной атмосфере + 16 домашних работ с жесткими сроками.
Не готовишься — вылетаешь.

Подробнее о курсе