Найти в Дзене

Информатика ЕГЭ №14 — системы счисления, множества и функция int в языке программирования Python

В текущем задании ЕГЭ №14 по информатике потребуются знания о системах счисления, ну и, конечно же, программирования. В плане систем счисления потребуются базовые знания (сколько цифр в системе счисления). Прежде чем приступить к заданию, необходимо изучить одну из важных функций в python — int(). Данная функция относится к теме приведение типов, но она также способна переводить числа из любой системы счисления в десятичную. Рассмотрим пример. Нужно перевести число 123 из пятеричной системы счисления в десятичную. Функция int() также переводит строку в целочисленный тип данных, если не использовать второй аргумент. Теперь вполне можно приступить к выполнению задания. Задание Дано выражение. X, Y — неизвестные цифры из алфавита этих систем счисления. Определите значения x и y, при которых значение данного арифметического выражения будет наименьшим и кратно 56. Для найденных значений x и y вычислите частное от деления значения арифметического выражения на 56 и укажите его в ответе в деся

В текущем задании ЕГЭ №14 по информатике потребуются знания о системах счисления, ну и, конечно же, программирования. В плане систем счисления потребуются базовые знания (сколько цифр в системе счисления).

Прежде чем приступить к заданию, необходимо изучить одну из важных функций в pythonint(). Данная функция относится к теме приведение типов, но она также способна переводить числа из любой системы счисления в десятичную.

Рассмотрим пример. Нужно перевести число 123 из пятеричной системы счисления в десятичную. Функция int() также переводит строку в целочисленный тип данных, если не использовать второй аргумент.

Пример использования функции int() для перевода в десятичную систему счисления
Пример использования функции int() для перевода в десятичную систему счисления

Теперь вполне можно приступить к выполнению задания.

Задание

Дано выражение. X, Y — неизвестные цифры из алфавита этих систем счисления. Определите значения x и y, при которых значение данного арифметического выражения будет наименьшим и кратно 56. Для найденных значений x и y вычислите частное от деления значения арифметического выражения на 56 и укажите его в ответе в десятичной системе счисления.
Выражение из задания
Выражение из задания

Решение проведём поэтапно. Для начала перепишем выражение в удобный программный вид, где x, yнеизвестные. Запишем всё в одну переменную, в которой будем переводить строку чисел в пятнадцатеричной и шестнадцатеричной системах счисления в десятичную.

Выражение в удобном формате на языке программирования Python
Выражение в удобном формате на языке программирования Python

Теперь дополним программу, добавив в неё алфавит и два цикла, которые будут перебирать цифры из алфавита.

Добавление циклов и переменной с алфавитом в программу
Добавление циклов и переменной с алфавитом в программу

Сразу стоит сказать, что тут используется один нюанс. В приведённом алфавите используется лишь 15 цифр, то есть для второго числа в выражении перебираются НЕ все варианты. Данное упущение имеет место, так как требуется найти минимальное число, а операция между числами — сложение.

Снова дополним программу, добавив в неё множество (можно и обычный список). Во множестве будем хранить числа, которые будут делиться на 56 без остатка. Для этого используем условие.

Добавление множества и условия в программу
Добавление множества и условия в программу

Использовался метод add, который применим для множеств. С его помощью добавляем числа, прошедшие проверку, во множество.

Теперь уже необходимо найти минимальное число из множества и поделить его на 56. Для этого используем функцию min() и целочисленное деление. И можно будет сразу вывести ответ.

Вывод минимального числа из множества и целочисленное деление на 56
Вывод минимального числа из множества и целочисленное деление на 56

В результате работы программы получили ответ — 18754.

Понравилась статья? Хочешь разбираться в информатике, программировании и уметь работать в разных программах? Тогда ставь лайк, подпишись на канал и поделись статьей с друзьями! Остались или появились вопросы — спроси в комментариях!

Читайте также:
  • Информатика ЕГЭ №13 — графическое и аналитическое решение ориентированного графа
  • Информатика ЕГЭ №12 — методы find, count, replace при работе со строками в языке программирования Python
  • Информатика ЕГЭ №11 — нахождение объёма информации в текстовом файле или в фрагменте текста