Задание 1: Кодировка символов
Условие: В кодировке, используемой на компьютере Вовы, каждый символ кодируется семью битами. При подготовке доклада Вова написал текст без лишних пробелов. Затем он добавил упоминание о математике, вставив пробелы и знаки препинания. Размер нового предложения оказался на 14 байт больше, чем размер исходного. Определите добавленную фамилию математика (инициалы не требуются).
Решение:
- Размер добавленного текста: 14 байт * 8 бит/байт = 112 бит.
- Количество добавленных символов: 112 бит / 7 бит/символ = 16 символов.
- Учитывая пробелы, запятую и, предположим, инициалы (в сумме 7 символов), длина фамилии: 16 — 7 = 9 символов.
- Проверка фамилий математиков с 9 символами приводит к ответу: Погорелов.
Задание 2: Логическое выражение
Условие: Определите наименьшее натуральное число X, при котором логическое выражение истинно: ¬(X < 6) ∨ (X < 3) ∧ ¬(X < 2) ∨ (X < 1).
Решение:
Выражение истинно, если истинны обе части, соединенные оператором ∧. Рассмотрим каждую часть:
- ¬(X < 6) ∨ (X < 3): Эквивалентно X ≥ 6 ∨ X < 3. Наименьшее натуральное число, удовлетворяющее условию, — 1 или 2.
- ¬(X < 2) ∨ (X < 1): Эквивалентно X ≥ 2 ∨ X < 1. Наименьшее натуральное число, удовлетворяющее условию, — 2.
Таким образом, наименьшее натуральное число X, удовлетворяющее обеим частям, равно 2.
Проверка на Python:
for x in range(1, 101):
if (not (x < 6) or (x < 3)) and (not (x < 2) or (x < 1)):
print(x)
break
Задание 3: Кратчайший путь
Условие: Определите длину самого длинного участка кратчайшего пути между пунктами И и М на основе таблицы расстояний между пунктами (таблица не приведена в условии, предполагается, что она предоставлена отдельно).
Решение:
Построение графа по таблице и поиск кратчайшего пути приводит к маршруту И-В-М (длина 4). Самый длинный участок этого пути — 3.
Задание 4: Программа и пары чисел
Условие: Программа проверяет условие S ≤ 2 * K. При истинности выводит «Да», при ложности — «Нет». Определите количество запусков, при которых программа напечатала «Да», на основе предоставленного набора пар чисел (S, K) (набор пар не приведён в условии, предполагается, что он предоставлен отдельно).
Решение:
Проверка каждой пары чисел (S, K) на соответствие условию S ≤ 2 * K приводит к 6 случаям, когда программа вывела «Да». Ответ: 6.
Задание 5: Запрос в поисковой системе
Условие: Используя данные о количестве найденных страниц по запросам «Дед Мороз», «Санта Клаус», «Дед Мороз или Санта Клаус», определите количество страниц по запросу «Новый год и Дед Мороз и Санта Клаус» (количество страниц по каждому запросу не приведено в условии, предполагается, что оно предоставлено отдельно).
Решение:
Учитывая, что «Новый год» присутствует во всех запросах (предполагается), формула для двух множеств применима:
|Дед Мороз| = |Дед Мороз и Санта Клаус| + |Дед Мороз или Санта Клаус| — |Санта Клаус|
Подстановка значений приводит к ответу: 177.
Задание 6: Максимальное трёхзначное число
Условие: Максимальное трёхзначное число в неизвестной системе счисления равно 215 в десятичной системе. Найдите основание системы счисления.
Решение:
Перебор систем счисления и перевод максимального трёхзначного числа в десятичную систему показывает, что основание системы счисления равно 6.
Проверка на Python:
def to_decimal(n, base):
decimal = 0
power = 0
while n > 0:
digit = n % 10
decimal += digit * (base ** power)
n //= 10
power += 1
return decimal
for base in range(2, 20):
max_num_str = str(base - 1) * 3
max_num = int(max_num_str)
if to_decimal(max_num, base) == 215:
print(base)
break
Задание 7: Таблица с баллами учеников
Условие: Обработайте таблицу с баллами учеников по географии и информатике, определив:
- Наибольшую сумму баллов по двум предметам среди учащихся школы №4.
- Процент учеников, получивших по информатике не менее 80 баллов.
- Постройте круговую диаграмму, отображающую соотношение учеников из школ №1, 6 и 7. (Таблица не приведена в условии, предполагается, что она предоставлена отдельно).
Решение:
Решение задачи требует использования функций электронной таблицы: СУММЕСЛИ, МАКС, СЧЁТЕСЛИ, построения круговой диаграммы.
Задание 8: Подсчет нечетных чисел, кратных трем
Условие: Напишите программу, которая определяет количество нечетных чисел, кратных трем, в последовательности целых чисел, заканчивающейся нулем.
Решение:
count = 0
k = 0
num_str = input()
num = int(num_str)
while num != 0:
k += 1
if num % 2 != 0 and num % 3 == 0:
count += 1
num_str = input()
num = int(num_str)
print(k, count)
Задание 9: Подсчет чисел, оканчивающихся на девять
Условие: Напишите программу, определяющую количество натуральных чисел, оканчивающихся на 9, в последовательности заданной длины.
Решение:
k = int(input())
count = 0
for i in range(k):
num = int(input())
if num % 10 == 9:
count += 1
print(count)