Preview

Informatics in school

Advanced search

How to use the Python programming language in fulfilling crypto-arithmetic tasks in secondary school

https://doi.org/10.32517/2221-1993-2023-22-4-67-73

Abstract

The article provides a way to optimize an enumeration process in the Python programming language while solving crypto-arithmetic (enumerative) tasks where two multi-digit numbers add to each other in a column. It is noted that there are two directions in fulfilling enumeration problems which suggest being optimized by combinatorial (algebraic) and programming methods. Moreover, it has been found out that it is impractical to express algebraic optimization methods directly in program codes, since programming languages have their own possibilities for optimizing search procedures.

Therefore, the process of learning how to optimize search while fulfilling enumerative tasks should be carried out in two stages. Combinatorial methods are the best means of forming students’ logical mindsets and algorithmic skills. That is the reason why these methods should necessarily be included in the informatics course at the level of general secondary education. Then, at the advanced stage of training, or at the level of secondary general education, it is useful for students to move to the programming direction mastering high-level programming languages.

The optimizing strategy of solving crypto-arithmetic problems described in the article, and its implementation in the Python language involves omitting conventional cyclic structures, as well as widely known methods of processing character data. When compiling a computer program "слова.py", the authors applied the join method and the permutations function of the itertools module from the Python standard library. This choice has greatly simplified the recording of the program codes and reduced the time it took to search for the solution.

About the Authors

Z. I. Zinnatullin
School 1353
Russian Federation

Moscow



O. M. Korchazhkina
Federal Research Centre "Computer Science and Control" of the Russian Academy of Sciences
Russian Federation

Moscow



References

1. Босова Л. Л. Программирование как инструмент формирования вычислительного мышления обучающихся // Информатика в школе. 2020. № 10. С. 4–10. EDN: GURIPH. DOI: 10.32517/2221-1993-2020-19-10-4-10.

2. Босова Л. Л., Аквилянов Н. А. Обработка символьных данных: от простого к сложному // Информатика в школе. 2022. № 6. С. 5–11. EDN: DVGZGT. DOI: 10.32517/2221-19932022-21-6-5-11.

3. Босова Л. Л., Павлов Д. И., Ткач Т. В., Бутарев К. В. О содержании «Базового курса информатики» в проекте «ИТ-класс в московской школе» // Информатика в школе. 2021. № 10. С. 9–18. EDN: FVCHQS. DOI: 10.32517/2221-1993-2021-20-10-9-18

4. Заславская О. Ю., Любутов О. Д. Особенности методики преподавания цикла For в языке Python в средней школе // Информатика в школе. 2022. № 4. С. 70–73. EDN: KGUBSE. DOI: 10.32517/2221-1993-2022-21-4-70-73.

5. Корчажкина О.М. Криптоарифметические и другие переборные задачи на уроках информатики // Актуальные проблемы методики обучения информатике и математике в современной школе: Материалы международной научнопрактической интернет-конференции (г. Москва, 18–24 апреля 2022 г.). М.: МГПУ, 2022. С. 159–170. EDN: IRPYVZ.

6. Корчажкина О. М. Оптимизация поиска при решении переборных задач в углубленном курсе информатики на уровне основного общего образования // Системы и средства информатики. 2022. Т. 32. № 4. С. 145–156. EDN: PFCFPE. DOI: 10.14357/08696527220414.

7. Пэйн Б. Python для детей и родителей: пер. с англ. М. А. Райтмана. М.: Издательство «Э», 2017. 352 с.

8. Саймон Г. Науки об искусственном: пер. с англ. 2-е изд. М.: Едиториал УРСС, 2004. 144 с.

9. Самылкина Н. Н. Организация углубленного обучения информатике на основе интегративного подхода: монография. М.: МПГУ, 2020. 346 с.

10. Смольняков В. Г. Методика выполнения задания № 8 ЕГЭ по информатике и ИКТ комбинаторным способом и способом программирования на Python // Информатика в школе. 2021. № 10. С. 54–60. EDN: JIOUDT. DOI: 10.32517/2221-19932021-20-10-54-60.

11. Щерба А. В. Программирование на Python®: Первые шаги. М.: Лаборатория знаний, 2022. 250 с.


Review

For citations:


Zinnatullin Z.I., Korchazhkina O.M. How to use the Python programming language in fulfilling crypto-arithmetic tasks in secondary school. Informatics in school. 2023;(4):67-73. (In Russ.) https://doi.org/10.32517/2221-1993-2023-22-4-67-73

Views: 213


Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 License.


ISSN 2221-1993 (Print)