Zadanie 6
Matura z informatyki, maj 2024, poziom rozszerzony
Wymaganie: I. Rozumienie, analizowanie i rozwiązywanie problemów — systemy pozycyjne, konwersje między systemami liczbowymi, arytmetyka w różnych systemach.
Treść zadania
Zadanie 6. (0–2)
Wykonaj działania na liczbach zapisanych w systemie trójkowym i systemie dziewiątkowym. Wyniki podaj w systemie trójkowym.
101112₃ + 121₉ = …
101112₃ − 121₉ = …
Źródło: arkusz CKE MINP-R0-100-2405. Otwórz oryginalny PDF
Rozwiązanie
Kluczowa obserwacja: 9 = 3², więc każda cyfra w systemie dziewiątkowym odpowiada dokładnie dwóm cyfrom w systemie trójkowym:
- 0₉ = 00₃
- 1₉ = 01₃
- 2₉ = 02₃
- 3₉ = 10₃
- 4₉ = 11₃
- 5₉ = 12₃
- 6₉ = 20₃
- 7₉ = 21₃
- 8₉ = 22₃
Konwersja 121₉ na system trójkowy:
- 1₉ → 01₃
- 2₉ → 02₃
- 1₉ → 01₃
121₉ = 010201₃ = 10201₃
Sprawdzenie wartości dziesiętnych:
- 101112₃ = 1·243 + 0·81 + 1·27 + 1·9 + 1·3 + 2 = 243 + 27 + 9 + 3 + 2 = 284
- 121₉ = 1·81 + 2·9 + 1 = 81 + 18 + 1 = 100
- 10201₃ = 81 + 18 + 1 = 100 ✓
Dodawanie: 284 + 100 = 384
Zamiana 384 na system trójkowy:
- 384 = 1·243 + 141; 141 = 1·81 + 60; 60 = 2·27 + 6; 6 = 0·9 + 6; 6 = 2·3 + 0; 0
- 384₁₀ = 112020₃
Odejmowanie: 284 − 100 = 184
Zamiana 184 na system trójkowy:
- 184 = 0·243 + 184; 184 = 2·81 + 22; 22 = 0·27 + 22; 22 = 2·9 + 4; 4 = 1·3 + 1; 1
- 184₁₀ = 20211₃
Odpowiedź:
- 101112₃ + 121₉ = 112020₃
- 101112₃ − 121₉ = 20211₃
Najczęstsze błędy: (1) traktowanie 121₉ jakby to było 121₃ (zupełnie inna wartość); (2) konwersja cyfra-po-cyfrze bez pamiętania, że każdej cyfrze dziewiątkowej odpowiadają dwie trójkowe (z wiodącym zerem!); (3) zwykłe pomyłki w dodawaniu trójkowym (pamiętaj: 2 + 2 = 11₃, nie 4); (4) zwracanie wyniku w systemie dziesiętnym wbrew poleceniu.
Strona arkusza CKE z treścią zadania
Rozwiązanie
Najprostsza droga: konwertuj wszystko na system dziesiętny, wykonaj działania, przekonwertuj wynik z powrotem na trójkowy.
Alternatywnie (szybciej): zauważ że 9 = 3², więc każda cyfra dziewiątkowa to “para” cyfr trójkowych. Pozwala to liczyć w pamięci bez konwersji do dziesiętnego.
Wyniki:
- 101112₃ + 121₉ = 112020₃
- 101112₃ − 121₉ = 20211₃
Weryfikacja w Pythonie:
a = int("101112", 3) # 284
b = int("121", 9) # 100
def to_base(n, b):
if n == 0: return "0"
s = ""
while n:
s = str(n % b) + s
n //= b
return s
print(to_base(a + b, 3)) # "112020"
print(to_base(a - b, 3)) # "20211" Rozumiesz, jak to rozwiązać?
Przećwicz podobne typy zadań w aplikacji
matury-online.pl ma tysiące zadań pogrupowanych po dziedzinach. Sprawdź, czy temat „systemy liczbowe, system trójkowy, system dziewiątkowy, dodawanie, odejmowanie" zrobisz samodzielnie.
Otwórz matury-online.pl