Matura informatyka maj 2026, zadanie 2 (przeniesienia) — rozwiązanie

Liczenie przeniesień w dodawaniu pisemnym. Gotowa tabela do 2.1, algorytm do 2.2 zgodny z zakazami z treści, i pułapka, przez którą ludzie gubią punkt.

Symulujesz dodawanie pisemne od prawej. Cyfry wyciągasz wyłącznie arytmetyką% 10 daje ostatnią, // 10 ją obcina. Żadnych napisów, list ani konwersji, bo treść ich zabrania.

Arkusz CKE — maj 2026, rozszerzony

Zasada — jedna kolumna

W każdej kolumnie liczysz cyfra a + cyfra b + przeniesienie z poprzedniej. Suma co najmniej 10 oznacza przeniesienie do następnej kolumny i podbicie licznika. Mniej — przeniesienie wraca do zera.

Ślad dla 27732 + 72619:

krokcyfra acyfra bprzen. wej.sumaprzen. wyj.p
12901111
2311501
37601312
47211013
52711014

Cztery przeniesienia.

Zadanie 2.1 — uzupełnienie tabeli

liczba aliczba bprzeniesień
37932125283
88765111110
4567892222223

88765 + 11111 — każda kolumna to najwyżej 8+1=9, nigdy nie dobijasz do dziesiątki. Zero przeniesień.

456789 + 222222 — od prawej 9+2=11, 8+2+1=11, 7+2+1=10, potem 6+2+1=9 i koniec. Trzy z rzędu.

Zadanie 2.2 — algorytm

Treść zabrania funkcji wbudowanych, list, konwersji typu i operatorów innych niż arytmetyczne, logiczne i porównania. Poniższy kod spełnia wszystko — używa tylko %, //, +, porównań i pętli.

def przeniesienia(a, b):
    p = 0
    przeniesienie = 0
    while a > 0:
        suma = a % 10 + b % 10 + przeniesienie
        if suma >= 10:
            przeniesienie = 1
            p = p + 1
        else:
            przeniesienie = 0
        a = a // 10
        b = b // 10
    return p

Warunek while a > 0 wystarcza, bo z treści obie liczby mają tę samą liczbę cyfr. Ewentualne ostatnie przeniesienie i tak nie wygeneruje kolejnego.

W pseudokodzie, jeśli wolisz tę formę:

Dane: a, b – liczby o tej samej liczbie cyfr
Wynik: p – liczba przeniesień

p ← 0
przeniesienie ← 0
dopóki a > 0:
    suma ← a mod 10 + b mod 10 + przeniesienie
    jeżeli suma >= 10:
        przeniesienie ← 1
        p ← p + 1
    w przeciwnym razie:
        przeniesienie ← 0
    a ← a div 10
    b ← b div 10
zwróć p

Gdzie tracisz punkty

  • Pominięte przeniesienie z poprzedniej kolumny. Patrz krok 4 w tabeli: 7 + 2 = 9, ale z przeniesieniem to 10 — i to jest przeniesienie. Najczęstszy błąd w całym zadaniu.
  • Myślenie, że % 10 to funkcja wbudowana. Nie jest, to operator arytmetyczny i jest w pełni dozwolony. Zakaz dotyczy str(), int(), len(), bin().
  • Brak jawnej inicjalizacji. p ← 0 i przeniesienie ← 0 muszą być wewnątrz algorytmu. Ich brak to punktowany błąd.

Ten sam wzorzec w innych arkuszach

Dodawanie „pod kreską" z przeniesieniami to jeden mechanizm, zmienia się tylko próg — 10, 3 albo 2:

Wyciąganie cyfr przez % 10 i // 10 wraca w maju 2024, zad. 2 (Cyfry) i grudniu 2024, zad. 3 (liczby czterocyfrowe).

Z tego samego arkusza: zad. 1 (rekurencja), zad. 3 (pary słów).


Cyfry przez % 10 i // 10 to wzorzec, który rozwiązuje kilkanaście zadań z ostatnich lat. Cała mapa — Variant.

Wariant — kurs maturalnyKup kurs