Python тілінде сандардың цифрларымен жұмыс істеу [Информатика]
Организация : Отырар ауданының адами әлеуетті дамыту бөлімінің «Темір» жалпы орта мектебі
Должность : физика-информатика пәнінің мұғалімі
Дата : 22.02.2022
Номер журнала : 26-2026
Аннотация: Бұл мақалада Python бағдарламалау тілінде бүтін сандардың цифрларымен жұмыс істеудің негізгі алгоритмдері мен әдістері қарастырылады. Мақаланың мақсаты – үш таңбалы және төрт таңбалы сандарды цифрларына бөлу, цифрлар қосындысын, көбейтіндісін және басқа комбинациялық амалдарды орындаудың тиімді жолдарын түсіндіру арқылы оқушылар мен бастауыш бағдарламашылардың алгоритмдік ойлауын дамыту. Жұмыста талдау, синтез, практикалық мысалдар келтіру және әдебиеттерге сілтемелер әдісі қолданылды. Нәтижелер көрсеткендей, бүтін бөлу (//) және қалдықты табу (%) амалдарын дұрыс пайдалану цифрлармен жұмыс істеудің кілті болып табылады [1, б. 145; 3]. Мақала бағдарламалаудағы негізгі тұжырымдамаларды түсінуге көмектеседі.
Аннотация: В данной статье рассматриваются основные алгоритмы и методы работы с цифрами целых чисел в языке программирования Python. Цель статьи – развитие алгоритмического мышления учащихся и начинающих программистов путем объяснения эффективных способов разбиения трехзначных и четырехзначных чисел на цифры, выполнения операций суммы, произведения и других комбинаторных действий над цифрами. В работе использованы методы анализа, синтеза, практического приведения примеров и ссылок на литературу. Результаты показывают, что правильное использование операций целочисленного деления (//) и нахождения остатка (%) является ключом к работе с цифрами [1, с. 145; 3]. Статья помогает понять фундаментальные концепции в программировании.
Abstract: This article discusses the basic algorithms and methods for working with digits of integers in the Python programming language. The aim of the article is to develop the algorithmic thinking of students and novice programmers by explaining efficient ways to split three-digit and four-digit numbers into digits, performing sum, product, and other combinatorial operations on digits. The work uses methods of analysis, synthesis, practical examples, and references to literature. The results show that the correct use of integer division (//) and modulo (%) operations is the key to working with digits [1, p. 145; 3]. The article aids in understanding fundamental programming concepts.
Кіріспе
Python – бұл синтаксисі қарапайым, оқуға жеңіл және кеңінен қолданылатын жоғары деңгейлі бағдарламалау тілі. Оның қуатты стандартты кітапханалары күрделі есептерді шешуді жеңілдетсе де, бағдарламалау негіздерін меңгеру әрқашан алгоритмдік ойлауды дамытудан басталады. Алгоритмдік ойлаудың маңызды элементтерінің бірі – сандарды цифрларына бөлу және олармен әр түрлі амалдарды орындау дағдысы. Бұл дағды тек математикалық есептерді шешуде ғана емес, сонымен қатар мәтіндік жолдарды өңдеу, деректерді талдау сияқты көптеген бағдарламалау салаларында қажет болады.
Оқу процесінде үш таңбалы немесе төрт таңбалы санның цифрларының қосындысын, көбейтіндісін табуды талап ететін тапсырмалар жиі кездеседі. Бұл мәселені шешудің бірнеше алгоритмі бар, олардың барлығы бүтін бөлу (//) және қалдықты табу (%) амалдарына негізделеді. Бұл амалдарды дұрыс түсініп, қолдана білу – бағдарламашының алғашқы қадамы. Осылайша, бұл мақаланың өзектілігі Python тілін үйрену барысында кездесетін негізгі мәселелердің бірін практикалық мысалдар арқылы түсіндіру және алгоритмдік ойлау дағдыларын қалыптастыруға көмектесу болып табылады [2, б. 92].
Негізгі бөлім
Python тілінде цифрлармен жұмыс істеу үшін алдымен санды цифрларына бөлу керек. Бұл үшін позициялық санау жүйесіндегі санның ұғымы түсінікті болуы тиіс. Мысалы, 274 саны мынадай түрде көрсетіледі: 2*100 + 7*10 + 4. Цифрларды алу үшін біз 10 санының дәрежелеріне бөлу мен қалдықты табу амалдарын қолданамыз.
Үш таңбалы санды цифрларына бөлу. N = 274 санының жүздігін (2), ондығын (7) және бірлігін (4) алудың екі танымал тәсілі бар.
Бірінші тәсіл:
- Жүздіктер санын алу:
A = N // 100(274 // 100 = 2). - Жүздіктен кейінгі қалған бөлікті алу:
B = N % 100(274 % 100 = 74). - Ондықтар санын алу:
C = B // 10(74 // 10 = 7). - Бірліктер санын алу:
D = B % 10(74 % 10 = 4).
Екінші тәсіл бірнеше айнымалыларды қолданбай, тікелей формулалар арқылы орындалады:
- Жүздік:
A = N // 100 - Ондық:
B = (N % 100) // 10 - Бірлік:
C = N % 10немесеC = (N % 100) % 10
Екінші тәсіл әдістемелік тұрғыдан қысқа және анық болып көрінеді, бірақ бірінші тәсіл алгоритмдік қадамдарды көрнекі түрде түсіндіруге ыңғайлы.
Төрт таңбалы санды цифрларына бөлу. Бұл жағдайда логика ұқсас, бірақ мыңдар разрядын есепке алу қажет. N = 3452 саны үшін:
- Мыңдықтар:
A = N // 1000(3452 // 1000 = 3) - Қалған бөлік:
B = N % 1000(3452 % 1000 = 452) - Жүздіктер:
C = B // 100(452 // 100 = 4) - Қалған бөлік:
D = B % 100(452 % 100 = 52) - Ондықтар:
E = D // 10(52 // 10 = 5) - Бірліктер:
F = D % 10(52 % 10 = 2)
Цифрлар алынғаннан кейін олармен келесідей танымал есептерді шығаруға болады:
1. Цифрлардың қосындысы: Барлық цифрларды қосу. Мысалы, 3452 саны үшін: 3 + 4 + 5 + 2 = 14. Бағдарламалық түрде: sum_digits = A + C + E + F.
2. Цифрлардың көбейтіндісі: Барлық цифрларды көбейту. 1234 саны үшін: 1 * 2 * 3 * 4 = 24. Бағдарлама: product_digits = A * C * E * F.
3. Цифрлардың квадраттарының қосындысы: Әр цифрды квадраттап, нәтижелерін қосу. 1221 саны үшін: 1² + 2² + 2² + 1² = 1 + 4 + 4 + 1 = 10. Бағдарлама: sum_of_squares = A**2 + C**2 + E**2 + F**2.
4. Бөлек топтармен жұмыс: Мысалы, төрт таңбалы санның алғашқы екі цифрының қосындысын (мыңдық + жүздік) және соңғы екі цифрының көбейтіндісін (ондық * бірлік) табу. 3452 үшін: (3+4)=7 және (5*2)=10. Бұл есептерде айнымалыларды дұрыс таңдау маңызды [4].
Бұл әдістердің бәрі циклдар мен тізімдерді (list) пайдаланбай, арифметикалық амалдар арқылы шешіледі, бұл бастауыш деңгейдегі түсініктілікті арттырады. Дегенмен, кез келген ұзындықтағы сандармен жұмыс істеу үшін циклдарды қолдану тиімдірек болады, бірақ бұл тақырыптың көлемінен тыс.
Практикалық маңыздылығы зор басқа да мәселелерге қарайтын болсақ, мысалы, палиндромды сандарды (алдынан да, артынан да бірдей оқылатын) тексеру, берілген санның цифрларынан максималды/минималды сан құру, санды цифрларының қосындысына бөлуге болатынын тексеру сияқты тапсырмалар осы негізгі алгоритмдердің кеңейтілген қолданылуы болып табылады.
Қорытынды
Python тілінде сандардың цифрларымен жұмыс істеу – бұл бағдарламалау мен алгоритмдік ойлауды үйренудің негізгі тақырыптарының бірі. Оның маңыздылығы тек жеке есептерді шешуден гөрі, ақпаратты өңдеу процесіндегі жалпы әдіснаманы түсінуде жатыр.
Мақалада келтірілген екі тәсіл де (бөлу және қалдық алу) цифрларды алудың тиімді және жылдам жолдарын көрсетеді. Бірінші тәсіл алгоритмдік қадамдарды көрнекі түрде көрсетуге, ал екіншісі – кодты қысқа және оқуға ыңғайлы етуге бағытталған. Цифрларды алу алгоритмін меңгергеннен кейін, олармен қосынды, көбейтінді, квадраттар қосындысы сияқты арифметикалық амалдарды орындау қиындық тудырмайды.
Осы тақырыпты игеру бағдарламашының келесі күрделі тақырыптарға (мысалы, циклдар, тізімдер, функциялар) дайындығының маңызды кезеңі болып табылады. Сандарды цифрларына дұрыс бөле білу көптеген олимпиадалық есептерді, сондай-ақ деректерді талдау мен өңдеудің нақты қолданбалы міндеттерін шешуге мүмкіндік береді. Сонымен, Python тілінде цифрлармен жұмыс істеу алгоритмдері – бұл тек білім деңгейін арттыру үшін ғана емес, сонымен бірге логикалық және алгоритмдік ойлау дағдыларын дамытудың тиімді құралы.
Әдебиеттер тізімі
- Салғараева Г.И., Көпеева Г.А., Қаптағаева Ә.Ә., Юсупова А.Ғ. Информатика. 6 сынып. – Алматы: Арман-ПВ, 2020. – 80 б.
- Қадырқұлов Р.А., Рысқұлбекова А.Д. Информатика. 8 сынып. – Алматы: Алматыкітап, 2018. – 176 б.
- Lutz, M. Learning Python. 5th Edition. – O'Reilly Media, 2013. – 1648 p.
- Downey, A. Think Python: How to Think Like a Computer Scientist. 2nd Edition. – O'Reilly Media, 2015. – 292 p.
- Python бағдарламалау тілі – Уикипедия. [Электрондық ресурс]. – URL: https://kk.wikipedia.org/wiki/Python_(бағдарламалау_тілі) (қаралған күні: 05.05.2024).
- Информатика. 7 сынып. – Opiq.kz электронды оқулығы. [Электрондық ресурс]. – URL: https://opiq.kz (қаралған күні: 05.05.2024).
- McKinney, W. Python for Data Analysis: Data Wrangling with Pandas, NumPy, and IPython. 2nd Edition. – O'Reilly Media, 2017. – 548 p.
- Әдістемелік журналға мақала жариялаудың негізгі талаптары [Электрондық ресурс] – https://adisteme.kz/rules.html