DAMOO

Информатика · ҰБТ 2026 · 03. Компьютерлік ойлау

Python программалау тілінде алгоритмдерді программалау

Тестті бастау

Тест тапсыру үшін жүйеге кіру немесе тіркелу керек.

Конспект

Оқулықтық тірек

  • Қадырқұлов Р. А., Нұрмұханбетова Г. К. «Информатика», 6-сынып, Алматыкітап баспасы, 2020, 82–85-беттер
  • Қадырқұлов Р. А., Рысқұлбекова Ә. Д., Нұрмұханбетова Г. К. «Информатика», 7-сынып, Алматыкітап баспасы, 2023, 115–129-беттер
  • Қадырқұлов Р. А., Рысқұлбекова А. Д., Нұрмұханбетова Г. К. «Информатика», 8-сынып, Алматыкітап баспасы, 2023, 78–101-беттер
  • Мұхамбетжанова С. Т., Тен А. С., Голикова Н. Г. «Информатика», 9-сынып, Атамұра, 2019, 117–146, 157–159-беттер

Негізгі ұғымдар

  • Python-ның негізгі типтері: int (бүтін), float (нақты), str (жол), bool (True/False); типті type() анықтайды.
  • input() әрқашан жол қайтарады; санға int() / float() арқылы айналдырылады.
  • Тармақталу: if … else, кірістірілген if, құрамды шарт (and, or, not).
  • Циклдер: for (қайталау саны белгілі) және while (шарт ақиқат болғанша).
  • range(k, n, x) — $k$-дан $n-1$-ге дейін $x$ қадаммен; $n$ кірмейді.
  • Цикл басқару: continue — келесі итерацияға өту, break — циклден шығу, циклдің else блогы — break болмаса орындалады.
  • Тізім (list) — индексі 0-ден басталатын реттелген жиын; матрица — тізімдердің тізімі, a[i][j].

Теория

Типтер мен амалдар. int(126.858) = 126 (бөлшек бөлігі қиылады), float(748) = 748.0. // — бүтін бөлу, % — қалдық, ** — дәреже. Тырнақ ішіндегі 'True' немесе '-25' — жол (str), сан емес.

Тармақталған алгоритм. Қадамның орындалуы шартқа тәуелді. Шарт — ақиқат не жалған мән беретін логикалық өрнек. Салыстыру операторлары: ==, !=, >, <, >=, <=. Қысқа түрі — тек if; толық түрі — if … else. Блок-схемада шарт — ромб. Әрбір else өзінің алдындағы if-ке тиесілі; кірістіру тереңдігін 2–3-тен асырмаған жөн.

Құрамды шарт. and — екеуі де ақиқат болса; or — кемінде біреуі; not — терістеу. Мысалы, II ширек: x < 0 and y > 0.

while циклі. Шарт денеден бұрын тексеріледі: шарт басында жалған болса, дене бір рет те орындалмайды. Шарт ешқашан жалған болмаса — шексіз цикл (Ctrl + C). Санның цифрларын өңдеу: N % 10 — соңғы цифр, N // 10 — соңғы цифрды алып тастау.

for циклі және range. range(6) → 0…5; range(6, 11) → 6…10; range(1, 11, 2) → 1 3 5 7 9; range(10, 0, -1) → 10…1. Цикл денесі 4 бос орын шегініспен жазылады.

continue, break, else. continue ағымдағы итерацияны тоқтатып келесісіне өтеді; break циклді толық аяқтайды; else блогы цикл break-сіз аяқталғанда ғана орындалады.

Бірөлшемді тізім. s = [372.49, 370.76, 371.35], s[0] — бірінші элемент. Тізім — өзгермелі тип, әртүрлі типті элементтерді сақтай алады. Құру: [], list(), [0] * n, генератор [i ** 2 for i in range(1, n + 1)]. Әдістер мен функциялар: append, extend, insert(i, x), remove(x), del a[i], clear, index, count, reverse, len, sum, max, min, x in a. Шарт бойынша өшіру while арқылы жасалады — del кезінде тізім ұзындығы өзгереді.

Екіөлшемді массив (матрица). arr = [[11, 22, 33], [44, 55, 66]]: arr[1][2] = 66. Бірінші индекс — жол, екіншісі — баған. Өңдеу үшін екі кірістірілген цикл керек. Бас диагональ: i == j; одан жоғары — i < j, төмен — i > j; қосымша диагональ: i + j == n - 1.

# Санның цифрларының қосындысы (while)
N = int(input())
s = 0
while N != 0:
    s += N % 10
    N //= 10
print(s)

# 1-ден 100-ге дейінгі қосынды (for)
s = 0
for i in range(1, 101):
    s += i
print(s)          # 5050

# Тізімде іздеу: for ... else
a = [4, 8, 0, 7, 4]
for i in range(len(a)):
    if a[i] == 0:
        print(i + 1)  # 3
        break
else:
    print('joq')

Мысалдар

  1. for i in range(1, 10): if i == 4: break — дене неше рет орындалады? $i = 1, 2, 3, 4$ — 4 рет (4-те break-ке дейін дене басталады).
  2. N = 16896 секундты сағат, минут, секундқа бөл. 16896 // 3600 = 4, қалдық 2496; 2496 // 60 = 41, қалдық 36 → 4 сағат 41 минут 36 секунд.
  3. s = 0; for i in range(11, 21): s += i % 10; if s > 15: break — print(s)? $s$: 1, 3, 6, 10, 15, 21 → 21 > 15, шығады 21.
  4. a = 10; b = 5; if a > 5 and a < b: b = a — b? $10 < 5$ жалған, $b = 5$ қалады.

ҰБТ-дағы жиі қателер

  • range(1, 10) ішіне 10 кіреді деп ойлау: соңғы мән — 9.
  • input() нәтижесін санға айналдырмай қосу: '2' + '3' = '23'.
  • / мен // шатастыру: 7 / 2 = 3.5, 7 // 2 = 3.
  • Циклдің else блогы әрдайым орындалады деп санау: break болса — орындалмайды.
  • Тізім индексін 1-ден бастау: бірінші элемент — a[0], соңғысы — a[len(a) - 1].

Өзіңді тексер

  1. type('True') нәтижесі? — str.
  2. range(2, 11, 2) неше мән береді? — 5 (2, 4, 6, 8, 10).
  3. while шарты басында жалған болса, дене неше рет орындалады? — Бір рет те орындалмайды.
  4. arr = [[1, 2, 3], [4, 5, 6]] болса, arr[0][2]? — 3.
  5. Ағымдағы итерацияны тоқтатып, келесісіне өтетін нұсқау? — continue.