Разборы · ЕГЭ, задание 7
Задание 7 ЕГЭ по информатике: кодирование звука и изображений
Что проверяет задание
Задание 7 — расчёт объёма звукового файла или растрового изображения (иногда — времени передачи или числа цветов). 1 балл. Компьютер не нужен, но калькулятор в Python помогает не ошибиться в больших числах.
Что нужно знать
- Звук: I = k · f · i · t, где k — число каналов (моно — 1, стерео — 2, квадро — 4), f — частота дискретизации в Гц, i — глубина кодирования в битах, t — время в секундах. Результат — в битах.
- Изображение: I = W · H · i, где W × H — размер в пикселях, i — бит на пиксель. Число цветов N = 2i, то есть i = ⌈log₂N⌉.
- 1 байт = 8 бит, 1 Кбайт = 1024 байта, 1 Мбайт = 1024 Кбайт.
- «Наименьшее количество Кбайт, необходимое для сохранения» — это деление с округлением вверх.
Как решать
- Переведите всё в основные единицы: минуты — в секунды, килогерцы — в герцы.
- Подставьте в формулу и получите объём в битах.
- Переведите в нужные единицы и округлите так, как требует условие.
Пример из демоверсии 2027
Голосовое сообщение оцифровывается в формате стерео с частотой 32 000 Гц и глубиной 16 бит. Длительность — 2 минуты 27 секунд. Сколько Кбайт нужно, чтобы его сохранить (без заголовка)?
Решение. t = 2 · 60 + 27 = 147 с. I = 2 · 32 000 · 16 · 147 = 150 528 000 бит = 18 816 000 байт = 18 375 Кбайт. Деление получилось нацело, округлять не пришлось. Ответ: 18375.
import math
bits = 2 * 32000 * 16 * (2 * 60 + 27)
print(math.ceil(bits / 8 / 1024)) # 18375
Удобный приём для счёта в уме: раскладывайте числа на степени двойки. 32 000 = 28 · 125, 16 = 24, а 8 · 1024 = 213 — степени двойки хорошо сокращаются.
Типичные ошибки
- Забывают про стерео — объём в два раза больше, чем для моно.
- Считают 1 Кбайт = 1000 байт.
- Округляют вниз, когда спрашивают «наименьший объём, необходимый для хранения».
- Берут время в минутах, а частоту — в герцах (то есть в «разах в секунду»).
Потренироваться: задание 7 новые варианты с проверкой ответа