Системы счисления на ЕГЭ по информатике
Тема выглядит безобидно: школьник переводил числа между двоичной и десятичной записью ещё в восьмом классе. На экзамене она возвращается в виде задач, где нужно найти основание системы, сравнить записи, посчитать цифры в значении выражения со степенями. Баллы здесь теряют не те, кто не знает правил, а те, кто решает механически, делением в столбик, и сбивается на третьей строке.
Приёмы ниже годятся для любых чисел, а какие типы заданий встретятся в этом году, видно по демоверсии. Основной выигрыш даёт отказ от привычки переводить всё подряд в десятичную систему.
Что знать наизусть и как переводить группами
Из всего объёма знаний по теме наизусть нужны только степени двойки до десятой: 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024. Это короткая таблица, на её заучивание уходит вечер, а пользоваться ею вы будете постоянно: и при переводе, и при подсчёте разрядов, и в других заданиях про объём информации. Дальше степени удобно получать удвоением.
Остальное лучше понимать, чем зубрить. Каждая цифра в записи числа стоит на своём месте, и её вес равен основанию системы в степени номера места, если считать места справа налево, начиная с нулевого. В десятичной записи 207 это два раза по сто, ноль десятков и семь единиц. В двоичной записи 1101 это один раз по восемь, один раз по четыре, ноль двоек и одна единица, то есть 13.
Многие сразу бросаются переводить всё в десятичную систему. Для небольших чисел это работает, но для больших и для выражений со степенями получается медленно и с высокой вероятностью ошибки. Полезнее привыкнуть думать в той системе, в которой задана задача, и переходить к десятичной лишь в крайнем случае. Есть и обратный перекос: ученики, которые научились приёму с группами, пытаются применять его там, где основание не степень двойки. Для троичной или семеричной системы он не работает, и там по-прежнему приходится делить и раскладывать по разрядам. Различать эти два случая нужно сразу, глядя на основание, и тогда не будет соблазна ошибиться.
Самый полезный приём темы занимает три строки и заслуживает отдельного абзаца. Восьмеричная система тесно связана с двоичной: одной восьмеричной цифре соответствует ровно три двоичных. Шестнадцатеричная связана так же с четырьмя. Поэтому переводить между ними не нужно через десятичную, достаточно разбить запись на группы.
Возьму число 45. В двоичной записи оно выглядит как 101101: тридцать два, восемь, четыре и один дают 45. Разобьём справа налево по три цифры: 101 и 101, то есть 5 и 5, и получаем 55 в восьмеричной записи. Проверка: пять восьмёрок и пять единиц дают 45. Теперь по четыре цифры: 0010 и 1101, это 2 и 13, а тринадцати соответствует буква D, поэтому в шестнадцатеричной записи получается 2D. Проверка: два раза по шестнадцать и тринадцать дают 45.
Обратный переход ещё проще. Шестнадцатеричное 7C раскладывается на 7 и C, то есть 0111 и 1100, и двоичная запись 1111100. Десятичное значение 7 умножить на 16 плюс 12 даёт 124. Никаких делений в столбик не потребовалось.
Выражения со степенями
В заданиях часто встречаются выражения вроде суммы нескольких степеней двойки, и спрашивают, сколько единиц получится в двоичной записи значения. Решать такое вычислением, переводом в десятичную систему и обратно, нельзя: числа гигантские. Нужно понять устройство.
Степень двойки в двоичной записи — это единица и столько нулей, каким был показатель. Сумма разных степеней двойки — число, у которого единицы стоят ровно на местах этих показателей. Поэтому значение 2^10 + 2 в двоичной записи имеет две единицы, одну в старшем разряде и одну во втором разряде справа. Проверка маленьким примером: 1024 плюс 2 это 1026, то есть 10000000010.
Труднее с вычитанием. Выражение 2^10 − 2^4 равно 1008, и в двоичной записи оно имеет шесть единиц и четыре нуля: 1111110000. Общее правило: разность двух степеней двойки даёт цепочку единиц, длина которой равна разности показателей, и после неё столько нулей, чему равен меньший показатель. Если в выражении встречаются и степени четвёрки, их сначала приводят к двойке: 4 в степени 5 это 2 в степени 10.
Ловушка здесь в «лишнем» вычитании. Выражение 4^5 + 2^3 − 6 равно 1026, а кажется, что вычитание шестёрки запутает картину. Оно действительно меняет число, и придётся посчитать: 1024 плюс 8 минус 6 равно 1026, и двоичная запись содержит две единицы.
Основание неизвестно
Второй тип задач — найти основание системы, в которой верно равенство. Здесь действует один порядок. Каждое число разворачивают по разрядам, получают уравнение с одним неизвестным и решают его, а потом проверяют, что все цифры меньше найденного основания.
Теперь разберу один случай. В некоторой системе число 13, умноженное на 3, равно 41. Запишем 13 в системе с основанием N как N плюс 3, умножим на три и получим 3N плюс 9. Число 41 равно 4N плюс 1. Приравниваем: 3N плюс 9 равно 4N плюс 1, откуда N равно 8. Проверяем цифры: наибольшая из них 4, меньше восьми, всё в порядке. Контроль: 13 в восьмеричной системе это 11, умножение на три даёт 33, а 41 в восьмеричной системе это 4 раза по 8 и 1, то есть тоже 33.
Забыть последний шаг, проверку цифр, так же легко, как неверно раскрыть скобки. Бывает, что уравнение даёт несколько корней, и подходит из них лишь тот, у которого основание больше самой большой цифры в записях. Это условие и есть отсев, и без него выбирают неверный корень.
Сложение и сравнение записей
Бывают задачи, где требуется выполнить действие прямо в чужой системе. Сложим 27 и 15 в восьмеричной системе. Складываем единицы: семь плюс пять это двенадцать, а в восьмеричной системе в разряде помещается максимум семь, поэтому записываем четыре и переносим единицу, как мы переносим десяток в десятичной. Складываем восьмёрки: два плюс один плюс перенесённая единица дают четыре. Ответ 44. Проверка через десятичную: 27 в восьмеричной системе это 23, 15 это 13, сумма 36, а 44 это четыре раза по восемь и четыре, тоже 36.
Сравнение записей разных систем делается проще всего переводом обеих к общей системе, и общей выбирают ту, в которую переводить легче. Если одна запись двоичная, а другая шестнадцатеричная, общая двоичная, потому что шестнадцатеричная раскладывается на четвёрки цифр без вычислений. Если записи восьмеричная и десятичная, проще всего довести обе до десятичной, потому что восьмеричную запись достаточно разложить по разрядам, делить не придётся.
Вопросы про количество цифр или количество чисел с заданным свойством решаются через границы. В системе с основанием N все числа, записываемые k цифрами, лежат в пределах от N в степени (k − 1) включительно до N в степени k, не включая его. Значит, трёхзначных двоичных чисел четыре, начиная с 100 и заканчивая 111, то есть от четырёх до семи. Если просто вычесть границы, 7 − 4 = 3, ответ выйдет на единицу меньше верного: оба конца входят в счёт.
Ошибки, которые встречаются чаще всего
Первая ошибка: перепутать порядок цифр при переводе делением. Остатки записываются в обратном порядке, снизу вверх, а ученики в спешке переписывают их сверху вниз. Это можно поймать проверкой обратным переводом: возьмите 2024 и переведите в семеричную. Деление на 343 даёт пять и остаток 309, дальше на 49 шесть и остаток 15, на 7 два и остаток 1. Запись получается 5621, и проверка 5 · 343 + 6 · 49 + 2 · 7 + 1 возвращает 2024.
Вторая: забыть, что последняя цифра числа в системе с основанием N — остаток от деления на N. Из этого следует много быстрых выводов, например что запись, оканчивающаяся нулём в пятеричной системе, значит делимость на пять. Задачи на «сколько чисел оканчиваются на...» решаются одной строкой, если помнить это, и растягиваются на страницу, если нет.
Третья: забыть, что значат буквы A–F. В шестнадцатеричной системе цифр шестнадцать, а не десять, и буквы A–F обозначают значения от десяти до пятнадцати. Выпишите себе соответствие букв и чисел один раз, повесьте над столом, и через две недели потребность в этом исчезнет.
Как отрабатывать тему
Тема маленькая, но в разных заданиях проявляется по-разному. Поэтому тренируйтесь не на одном типе: однотипные упражнения дают ощущение уверенности, которое на экзамене не подтверждается, когда условие приходит в непривычной форме. Сначала переводы группами, пока рука не автоматизируется; затем выражения со степенями, которые стоит решать без калькулятора и без перевода в десятичную запись; потом неизвестное основание и задачи на количество разрядов. Для последних держите в голове, что в системе с основанием N число с k цифрами лежит в пределах от N в степени k минус один до N в степени k.
Полезная привычка: проверять каждый ответ вторым способом, пусть самым грубым. Ответ по двоичному выражению проверяется оценкой порядка величины, ответ по основанию — подстановкой. В середине работы, когда силы не безграничны, такие проверки спасают от тех нелепых ошибок, о которых потом хочется забыть.
Общую схему экзамена вы найдёте в статье про устройство ЕГЭ по информатике, а выбор языка для программирования — в материале про Python и C++. Если вы сдаёте ещё и химию, у неё свои расчёты и свой порядок, он описан в статье про структуру экзамена по химии. Как вписать отдельные темы в годовую подготовку, описано в статье о подготовке за год.
Начать поиск:
- репетиторы по информатике для подготовки к ЕГЭ
- все репетиторы для подготовки к ЕГЭ
- репетиторы по информатике
- пробное занятие по информатике
Вопросы и ответы
Можно ли пользоваться калькулятором на экзамене? На рабочем месте есть калькулятор, но в задачах про степени двойки он мало помогает. Условия использования смотрите в правилах проведения своего года.
Нужно ли учить таблицу шестнадцатеричных цифр? Достаточно запомнить, что буквы от A до F обозначают значения от десяти до пятнадцати. Остальное выводится из этого за секунды, и заучивание таблицы целиком не нужно.
Как быстро научиться переводить без ошибок? Выполняйте по несколько переводов каждый день и всегда проверяйте их обратным переводом. Когда в переводах перестанут встречаться неверные ответы, переходите к выражениям со степенями.
Что делать, если выражение со степенями оказалось слишком сложным? Разбейте его на части, каждую запишите в двоичной системе отдельно и сложите по разрядам. Если части перекрываются, значит, где-то был перенос, и его надо учесть.
С какого класса можно начинать готовиться к этой теме? С восьмого, когда её проходят в школе. Тогда хватит двух-трёх вечеров, чтобы привыкнуть к двоичной записи и таблице степеней двойки, и к одиннадцатому классу это знание уже не придётся добывать в спешке. Если тему в школе пропустили, начинайте с понятия разряда, а не с формул перевода.
Оставить заявку
- Татьяна Попова — Информатика и олимпиадное программирование · от 3 000 ₽
- Артём Игоревич Соловьёв — Информатика и математика: ОГЭ и ЕГЭ от практикующего разработчика · от 2 100 ₽
- Илья Германович Воронцов — Информатика: ЕГЭ, олимпиады и алгоритмы для студентов · от 1 700 ₽