ПОДГОТОВКА К ЕГЭ ПО ИНФОРМАТИКЕ И ИКТ: ОБЗОР ЗАДАНИЙ И РЕШЕНИЕ ЗАДАЧ НА ОСНОВЕ ЯЗЫКА ПРОГРАММИРОВАНИЯ PYTHON

DOI: https://doi.org/10.23670/IRJ.2021.110.8.097

ПОДГОТОВКА К ЕГЭ ПО ИНФОРМАТИКЕ И ИКТ: ОБЗОР ЗАДАНИЙ И РЕШЕНИЕ ЗАДАЧ НА ОСНОВЕ ЯЗЫКА ПРОГРАММИРОВАНИЯ PYTHON

Научная статья

Сорочинский М.А.1' *, Белолюбский М.М .2

1 2 Северо-Восточный федеральный университет имени М.К. Аммосова, Якутск, Россия

* Корреспондирующий автор

Аннотация

В статье анализируются изменения в ЕГЭ по информатике и ИКТ. С 2021 года экзамен проводиться на персональных компьютерах, в связи с этим, появляется возможность использования различных языков программирования для решения задач. Проведен обзор заданий экзамена, их тематика и обновление. Рассмотрены основные возможности языка программирования Python, необходимые, для успешной подготовки к единому государственному экзамену по информатике и ИКТ. Выявлены преимущества языка программирования Python для сдачи ЕГЭ по информатике, к ним относятся: простота, функциональность, множество библиотек, простой интерфейс. Рассмотрены примеры заданий, и их решение (№14,16,17) на основе языка программирования Python.

Ключевые слова: программирование, python, ЕГЭ, подготовка к ЕГЭ по информатике, информатика, подготовка к экзамену.

PREPARATION FOR THE UNIFIED STATE EXAM IN COMPUTER SCIENCE AND ICT: AN OVERVIEW OF TASKS AND PROBLEM SOLVING BASED ON THE PYTHON PROGRAMMING LANGUAGE

Research article

Sorochinsky M.A.1, *, Belolyubsky M.M.2

1 2 M. K. Ammosov North-Eastern Federal University, Yakutsk, Russia

* Corresponding author

Abstract

The article analyzes the changes in the Unified State Exam in computer science and ICT. Since 2021, the exam will be conducted on personal computers, in this regard, it becomes possible to use various programming languages to solve problems. The authors carry out an overview of the exam tasks, their topics and updates while also examining the main features of the Python programming language necessary for successful preparation for the unified state exam in computer science and ICT. The noted advantages of the Python programming language for passing the Unified State Exam in computer science include simplicity, functionality, a wide variety of libraries, a simple interface. Examples of tasks and their solutions are also considered (No. 14,16,17) based on the Python programming language.

Keywords: programming, python, Unified State Exam, preparation for the Unified State Exam in computer science, computer science, exam preparation.

Введение

В условиях цифровизации всех сфер жизни, число профессий, связанных с этой областью, растет с каждым годом. Для поступления на «цифровые» специальности необходима сдача ЕГЭ по информатике и ИКТ. Таким образом, с каждым годом растет количество школьников, сдающих данный предмет, так в 2018 году - 71704 человек, 2019 -80025 человек, 2020 - 83610 человек, 2021 - 113000 человек [2], [4], что позволяет сделать вывод о востребованности данного экзамена и необходимости качественной подготовки к его сдаче.

В 2021 году кардинально изменилась система приема экзамена. Так в 2020 году Рособрнадзор объявил о том, что экзамен пройдет полностью на компьютерах, также изменениям подверглись некоторые задания. Для выполнения заданий будет необходим текстовый редактор, редактор электронных таблиц, системы программирования на языках (на выбор): школьный алгоритмический язык, C++, С#, Java, Pascal, Python [1].

Современное программирование становится все более доступным для

всех людей. Существует большое количество готовых библиотек, которые помогают разрабатывать приложения, веб-клиенты, роботов, нейронные сети и др. [8]. Уже начиная со школы дети стараются изучить несколько языков программирования и все больше отдают предпочтение языку Python. Он имеет достаточно простой синтаксис, удобен и функционален, прост в использовании [5], [6].

Обзор заданий ЕГЭ по информатике и ИКТ

Как отмечалось выше, процедура экзамена в 2021 году претерпела значительные изменения, однако сами задания изменились в меньшей степени. Время проведения экзамена не изменилось (3 часа 55 минут); на компьютере должны быть установлены текстовый и табличный редактор, рекомендованные системы программирования; компьютер не должен иметь доступа к сети интернет; все ответы проверяются автоматически без участия экспертов; к заданиям могут прилагаться файлы с исходными данными для обработки [3]. Всего на экзамене представлено 27 заданий которые делятся на 3 уровня сложности (базовый - 10 , повышенный - 13, высокий - 4).

Задания 1-8 относятся к базовым, время выполнения которых варьируется от 2 до 5 минут за задание. Они не требуют использования программирования и решается путем анализа представленных данных и рассматриваются в рамках базовых тем по информатике. Аналогичные задание присутствовали и в прошлые годы в ЕГЭ по информатике и ИКТ.

Задание 9,10 появились в 2021 году. Время на выполнение каждого из них 6 минут, они направлены на умение обрабатывать числовую информацию в электронных таблицах и информационные поиск средствами операционной системы или текстового редактора. Для их успешного выполнения необходимы навыки работы в текстовом и табличном редакторе (поиск символов, словосочетаний, слов; знание формул и функций в табличном редакторе). В данных заданиях предоставляются файлы с исходными данными, которые необходимо проанализировать и обработать в соответствии с заданием.

Задание 11-15 относятся к повышенному уровню сложности. Для их успешного решения необходимы умения: подсчитывать информационный объем сообщения; анализировать результат исполнения алгоритма; представлять и считывать дынные в разных типах информационных моделей; знание позиционных систем счисления, основных понятий математической логики.

Задание 16-18. Выполняются путем написания программ на одном из языков программирования. Данные задания посвящены вычислению значений рекурсивной функции, проверки делимости, динамическому программированию. Задания 17 и 18 - новые задания.

Задание 19-23. Задания 19-21 объединили в себе задание №26 из ЕГЭ 2020 года, которое охватывает теорию игр. Задания 22 и 23 необходимы для проверки умения анализировать алгоритм, содержащий ветвление и циклы и анализа результатов исполнения алгоритма.

Программирование обязательно понадобится для решения всех задач высокого уровня сложности (24-27), кроме этого, задания 25-27 это новые задания на обработку символьных строк, нахождение делителей числа, обработку массива целых чисел. Задание 27, как и в прошлых вариантах ЕГЭ осталось неизменным и направлено на обработку последовательностей данных.

Способы решения заданий с использованием Python

Педагоги уделяют большое внимание процессу подготовки к ЕГЭ, особенно это необходимо в задачах на программирование. Так, например, на сайте К.Ю. Полякова представлена обширная библиотека методических рекомендации, разборов заданий, тренажеры [7]. Вопросами подготовки занимаются и многие другие преподаватели (А.Н. Сидоров, Н.Л. Конина, Е. А. Еремин, Е.А. Мирончик и др.). Опираясь на опыт педагогов [5], [6], [7] и современные тренды, можно сделать вывод об удобстве использования для решения задач языка программирования Python. На наш взгляд, предпочтительней использовать Python тем, кто поверхностно знаком с программированием или не знает другие языки программирования на уровне, достаточном для написания программ. Кто уже знаком с другими языками программирования, тот без особого труда также его освоит. Рассмотрим способы решения задач на основе Python.

Задание 14 - Умение работать с позиционными системами счисления (время выполнения - 3 минуты). Для решения данной задачи необходимо владеть переводом из одной системы счисления в другую. Python позволяет работать с очень большими числами, в отличие от калькулятора, не задумываясь о том, что для их хранения необходимо намного больше места. Основной алгоритм решения, следующий:

- записываем выражение в переменную и выполняем математические операции;

- используя цикл while переводим число в требуемую систему счисления и ищем необходимые значения/значение с помощью условий и, если это необходимо используем счетчик.

Пример (Демоверсия ЕГЭ-2021) Значение арифметического выражения: 497 + 721 - 7 - записали в системе счисления с основанием 7. Сколько цифр 6 содержится в этой записи [3]? Решение.

a = 49**7+7**21-7 #находим значение выражения c6 = 0 #количество цифр 6 в выражении while a>0:

if a%7 == 6: # наличия числа 6 в записи числа в системе счисления c6+=1 # подсчет количества искомых чисел

x = x//7 print

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

Задание 16 - вычисление рекуррентных выражений (время выполнения - 9 минут). Общая методика решения заключается в нахождении значения функции F(n) в соответствии с заданным алгоритмом, который может иметь сложное ветвление. Необходимо определить рекуррентную формулу и условие окончания рекурсии, в чем помогает использование функций в Python.

Пример (Демоверсия ЕГЭ-2021). Алгоритм вычисления функции F(n) задан следующими соотношениями: F(n) = 1 при n = 1 F(n) = n + F(n-1), если n чётно, F(n) = 2- F(n-2), если n > 1 и n нечётно. Чему равно значение функции F(26) [3]? def F(n):

if n == 1:

return 1 if n%2 == 0: return n+F(n-1) else:

return 2*F

Данный способ решения является одним из самых наглядных и простых, необходимо только правильно реализовать заданные формулы и учитывать условие окончание рекурсии чтобы не получить бесконечную рекурсию.

Задание 17 - перебор целых чисел на заданном отрезке, проверка делимости (время выполнения - 15 минут). Дан числовой отрезок, из которого необходимо выбрать числа, которые соответствуют определённым условиям делимости. Обычно требуется найти не только количество чисел, но, например, минимальное или максимальное из них. Задачу можно решить методом перебора, но при большом отрезке займет очень много времени; с помощью Python путем простого перебора, написания отдельной функции или с использованием списков. В примере рассмотрим вариант простого перебора значений.

Пример (Демоверсия ЕГЭ-2021). Рассматривается множество целых чисел, принадлежащих числовому отрезку [1016; 7937], которые делятся на 3 и не делятся на 7, 17, 19, 27. Найдите количество таких чисел и максимальное из них. В ответе запишите два целых числа: сначала количество, затем максимальное число. Для выполнения этого задания можно написать программу или воспользоваться редактором электронных таблиц [3].

k = 0 #счетчик количества чисел согласно условию

m = 1016 #максимальное значение

for i in range (1016,7937+1):

if i%3 ==0 and i%7 !=0 and i%17 !=0 and i%19 !=0 and i%27 !=0: k = k+1 m = i

print

При решении задачи необходимо уделить особое внимание правильности формулирования условий.

Заключение

Таким образом, использование компьютера при сдаче ЕГЭ по информатике и ИКТ делает его более практико-ориентированным. Около половины задач можно решить как с помощью написания программ в системах программирования, так и с помощью табличных редакторов (например Exel). Python, отличаясь своим простым синтаксисом, понятной структурой и наличием большого количества библиотек является очень удобным инструментом для решения задач.

Конфликт интересов Conflict of Interest

Не указан. None declared.

Список литературы / References

1. Письмо Рособрнадзора от 12.04.2021 № 10-99 "О направлении методических документов, рекомендуемых при организации и проведении государственной итоговой аттестации по образовательным программам основного общего и среднего общего образования в 2021 году"

2. Деготькова И. ЕГЭ по информатике и ИКТ: «Экзамен на компьютерах - это интересно» // Московский комсомолец (МК) - [Электронный ресурс]. URL: https://www.mk.ru/social/2021/04/17/ege-po-informatike-i-ikt-ekzamen-na-kompyuterakh-eto-interesno.html (дата обращения: 30.05.2021).

3. Демоверсии, спецификации, кодификаторы // ФИПИ - [Электронный ресурс]. URL: https://fipi.ru/ege/demoversii-specifikacii-kodifikatory (дата обращения: 17.11.2020).

4. Колесникова К. Экзамен по информатике впервые пройдет на компьютерах // Российская газета - Федеральный выпуск №180 (8234) - [Электронный ресурс]. URL: https://rg.ru/2020/08/13/ege-po-informatike-vpervye-projdet-na-kompiuterah.html (дата обращения: 30.05.2021).

5. Кондратьева В.А. Обучение основам программирования на языке Python в школьном курсе информатики / В.А. Кондратьева // Вестник Московского городского педагогического университета. Серия: Информатика и информатизация образования. 2021. № 1 (55). С. 8-16.

6. Лапшева Е.Е. Введение языка программирования Python в школьный курс информатики / Е.Е. Лапшева // Компьютерные науки и информационные технологии: Материалы Междунар. науч. конф. - Саратов: Издат. центр «Наука», 2016. - С. 232-233.

7. Поляков К. Ю. Авторский сайт [Электронный ресурс] - URL: https://kpolyakov.spb.ru/school/ege.htm (дата обращения: 30.06.2021).

8. Prokopiev M.S. Development of a programming course for students of a teacher training higher education institution using the programming language Python / M.S. Prokopiev, E.Z. Vlasova, T.V. Tretyakova et al. // Propositos y representaciones. - 2020. - Vol. 8. - № 3. - P. 15.

Список литературы на английском языке / References in English

1. Pis'mo Rosobmadzora ot 12.04.2021 № 10-99 "O napravlenii metodicheskikh dokumentov, rekomenduemykh pri organizacii i provedenii gosudarstvennojj itogovojj attestacii po obrazovatel'nym programmam osnovnogo obshhego i srednego obshhego obrazovanija v 2021 godu" [Letter of Rosobrnadzor dated 12.04.2021 No. 10-99 "On the direction of methodological documents recommended for the organization and conduct of the state final certification of educational programs of basic general and secondary general education in 2021"] [in Russian]

2. Degotkova I. EGEh po informatike i IKT: «Ehkzamen na komp'juterakh - ehto interesno» [Unified State Exam in Computer Science and ICT: "The exam on computers is interesting"] / I. Degotkova // Moskovsky Komsomolets (MK) -[Electronic resource]. URL: https://www.mk.ru/social/2021/04/17/ege-po-informatike-i-ikt-ekzamen-na-kompyuterakh-eto-interesno.html (accessed: 30.05.2021) [in Russian]

3. Demoversii, specifikacii, kodifikatory [Demos, specifications, codifiers] // Federal Institute for Pedagogical Measurements (FIPI)- [Electronic resource]. URL: https://fipi.ru/ege/demoversii-specifikacii-kodifikatory (accessed:

17.11.2020) [in Russian]

4. Kolesnikova K. Ehkzamen po informatike vpervye projjdet na komp'juterakh [The computer science exam will be held on computers for the first time] / K. Kolesnikova // Rossiyskaya Gazeta-Federal Issue No. 180 (8234) - [Electronic resource]. URL: https://rg.ru/2020/08/13/ege-po-informatike-vpervye-projdet-na-kompiuterah.html (accessed: 30.05.2021) [in Russian]

5. Kondratieva V. A. Obuchenie osnovam programmirovanija na jazyke Python v shkol'nom kurse informatiki [Learning the basics of programming in Python in a school computer science course] / V. A. Kondratieva // Vestnik Moskovskogo gorodskogo pedagogicheskogo universiteta. Serija: Informatika i informatizacija obrazovanija [Bulletin of the Moscow City Pedagogical University. Series: Informatics and informatization of education]. 2021. № 1 (55), pp. 8-16 [in Russian]

6. Lapsheva E. E. Vvedenie jazyka programmirovanija Python v shkol'nyjj kurs informatiki [Introduction of the Python programming language to the school course of computer science] / E. E. Lapsheva // Komp'juternye nauki i informacionnye tekhnologii: Materialy Mezhdunar. nauch. konf [Computer science and information technologies: Proceedings of the International Scientific Conference]-Saratov: "Science", 2016. - pp. 232-233 [in Russian]

7. Polyakov K. Yu. Personal website [Electronic resource] - URL: https://kpolyakov.spb.ru/school/ege.htm (accessed:

30.06.2021) [in Russian]

8. Prokopiev M.S. Development of a programming course for students of a teacher training higher education institution using the programming language Python / M.S. Prokopiev, E.Z. Vlasova, T.V. Tretyakova et al. // Propositos y representaciones. - 2020. - Vol. 8. - № 3. - p. 15