Wróć do: Arkusze maturalne
2025MAJ

Matura z informatyki 2025 – maj, poziom rozszerzony

Formuła 2015arkusz CKE · poziom rozszerzony

Arkusz maturalny z informatyki rozszerzonej, maj 2025 (Formuła 2015). Rozwiąż zamknięte części zadań online i sprawdź odpowiedzi, pobierz PDF z pełną treścią, dane do zadań oraz klucz CKE.

01

Opis

Arkusz maturalny z informatyki na poziomie rozszerzonym z sesji maj 2025 w Formule 2015 (stara podstawa programowa). Egzamin składał się z dwóch części: część I (zadania 1–3) trwała 60 minut i była warta 15 punktów, część II (zadania 4–6) trwała 150 minut i była warta 35 punktów – łącznie 50 punktów. Poniżej znajdziesz interaktywne wersje zamkniętych części zadań – uzupełnij puste pola i kliknij Sprawdź, aby od razu sprawdzić poprawność (odpowiedzi pochodzą z klucza CKE).

W zadaniach z konkretną odpowiedzią (liczba, wartość, lista) wpisz swój wynik i kliknij Sprawdź. W zadaniach otwartych (napisz program, algorytm, zapytanie SQL) kliknij Pokaż odpowiedź, aby zobaczyć wzorcowe rozwiązanie z klucza CKE. Pełną treść zadań znajdziesz też w arkuszach PDF.

02

Zadanie 1. Funkcja rekurencyjna

Dana jest rekurencyjna funkcja przestaw, której parametrem jest nieujemna liczba całkowita:

przestaw(n):
    r  n mod 100
    a  r div 10
    b  r mod 10
    n  n div 100
    jeżeli n > 0
        w  a + 10 * b + 100 * przestaw(n)
    w przeciwnym razie
        jeżeli a > 0
            w  a + 10 * b
        w przeciwnym razie
            w  b
    wynikiem jest w

Uwaga:

Operator mod oznacza resztę z dzielenia, natomiast div – część całkowitą z dzielenia.

Zadanie 1.1

Uzupełnij tabelę – wpisz w drugiej kolumnie wynik funkcji przestaw(n) dla podanych wartości argumentu n oraz wpisz w trzeciej kolumnie liczbę wywołań funkcji przestaw łącznie z pierwszym wywołaniem z parametrem n.

nWynik działania funkcji przestawLiczba wywołań funkcji przestaw
3164981346893
43657688
154005710
998877665544321

Zadanie 1.2

Oceń prawdziwość podanych zdań. Zaznacz P, jeśli zdanie jest prawdziwe, albo F – jeśli jest fałszywe.

Niech n będzie liczbą k-cyfrową, gdzie k > 0. Liczba wywołań funkcji przestaw w zależności od k jest równa:

NrWzórP / F
1.k2
2.(k + 1) div 2 (gdzie div oznacza dzielenie całkowite)
3.{k2 gdy k jest liczbą parzystąk + 12 gdy k jest liczbą nieparzystą
4.k + 12
03

Zadanie 2. Liczba falista

Liczba falista to liczba całkowita większa od 10, w której zapisie dziesiętnym występują na przemian tylko dwie różne cyfry.

Przykład: liczbami falistymi są 41414, 4545.

Niech n > 10 będzie liczbą całkowitą, w której zapisie dziesiętnym dwie ostatnie cyfry (najmniej znaczące) są różne od zera oraz różne od siebie. Liczbę n nazywamy liczbą bazową, a jej dwie ostatnie cyfry (z zachowaniem ich kolejności) nazywamy bazą.

Z każdej liczby bazowej można otrzymać liczbę falistą o takiej samej bazie co liczba n i o takiej samej długości zapisu dziesiętnego.

Przykład:

Z liczby bazowej 7834 uzyskujemy liczbę falistą 43434.
Z liczby bazowej 52786falistą 68686.

Zadanie 2.1

Uzupełnij tabelę – dla podanych wartości liczby bazowej podaj liczbę falistą o tej samej długości zapisu co liczba bazowa i o tej samej bazie.

Liczba bazowaLiczba falista
326
414141
7732
21289

Zadanie 2.2

W postaci pseudokodu lub w wybranym języku programowania napisz algorytm, który dla liczby bazowej n obliczy liczbę falistą f o tej samej bazie co liczba n i o takiej samej długości zapisu dziesiętnego.

Przykład:

Dla liczby 556621 wynikiem jest 212121, dla liczby 45621 wynikiem jest 12121.

Uwaga:

Twój algorytm może używać wyłącznie zmiennych przechowujących pojedyncze liczby całkowite oraz może operować wyłącznie na liczbach całkowitych. W zapisie algorytmu możesz korzystać tylko z instrukcji sterujących, z operatorów arytmetycznych: dodawania, odejmowania, mnożenia, dzielenia, dzielenia całkowitego i reszty z dzielenia; z operatorów logicznych, z porównań i instrukcji przypisania lub z samodzielnie napisanych funkcji i procedur wykorzystujących powyższe operacje. Zabronione jest używanie funkcji wbudowanych, dostępnych w językach programowania. Nie wolno w szczególności korzystać z żadnych funkcji zamiany z typu znakowego lub napisowego na liczbowy i odwrotnie.

Specyfikacja
Dane: n – liczba całkowita większa od 10, o różnych od zera i od siebie cyfrach dziesiątek i jedności. Wynik: f – liczba falista o tej samej bazie co liczba n i o takiej samej długości zapisu dziesiętnego.

Kliknij Pokaż odpowiedź, aby zobaczyć rozwiązanie z klucza CKE.

Uwaga: to zadanie otwarte – odpowiedź z klucza CKE jest jedynie przykładowa; istnieją również inne poprawne rozwiązania.

04

Zadanie 3. Test

Oceń prawdziwość podanych zdań. Zaznacz P, jeśli zdanie jest prawdziwe, albo F – jeśli jest fałszywe.

W każdym zadaniu punkt uzyskasz tylko za komplet poprawnych odpowiedzi.

Zadanie 3.1

Program typu keylogger służy do

NrZdanieP / F
1.szyfrowania informacji do postaci uniemożliwiającej jej odczytanie bez zdefiniowanego klucza.
2.przechowywania danych logowania, w tym – haseł, w bezpiecznym miejscu na dysku użytkownika.
3.generowania kodu, który umożliwia użytkownikowi bankowości elektronicznej wykonanie operacji.
4.przechwytywania i gromadzenia informacji o naciśniętych klawiszach.

Zadanie 3.2

Liczba 1111 1111 1111 1111₂ (zapisana w systemie binarnym) jest równa

NrZdanieP / F
1.33333333₄
2.777777₈
3.65535₁₀
4.FFFF₁₆

Zadanie 3.3

Informacja do zadań 3.3. i 3.4.

Dane są tabele Wlasciciele i Zwierzaki połączone relacją jeden do wielu, kluczem Id_Wlasciciela:

Id_WlascicielaImieNazwisko
1AnnaKowalska
2JanWierzbicki
3EwaNowak
Id_ZwierzakaImieGatunekId_Wlasciciela
1AsPies1
2ReksioPies2
3KapselPies3
4MruczekKot1
5KiciakKot1
6PuszekKrólik3
7BurekPies2

Wynikiem zapytania:

SELECT Wlasciciele.Imie, Wlasciciele.Nazwisko, count(*)
FROM Wlasciciele
INNER JOIN Zwierzaki ON Wlasciciele.Id_Wlasciciela = Zwierzaki.Id_Wlasciciela
GROUP BY Wlasciciele.Imie, Wlasciciele.Nazwisko;

jest

NrZdanieP / F
1.Pies 4, Kot 2, Królik 1
2.Anna Kowalska 3, Ewa Nowak 2, Jan Wierzbicki 2
3.Anna Kowalska 10, Ewa Nowak 9, Jan Wierzbicki 9
4.lista imion i nazwisk właścicieli oraz liczb ich zwierząt.

Zadanie 3.4

Wynikiem zapytania:

SELECT Wlasciciele.Imie, Wlasciciele.Nazwisko, Zwierzaki.Imie
FROM Wlasciciele
INNER JOIN Zwierzaki ON Wlasciciele.Id_Wlasciciela = Zwierzaki.Id_Wlasciciela
WHERE Zwierzaki.Imie > "P"
ORDER BY Wlasciciele.Nazwisko ASC;

jest

NrZdanieP / F
1.Ewa Nowak Puszek, Jan Wierzbicki Reksio
2.pusty wynik.
3.lista imion i nazwisk właścicieli zwierząt i imiona ich zwierząt zaczynające się literą P.
4.Anna Kowalska Reksio
05

Zadanie 4. Zapis symboliczny

W pliku symbole.txt zapisano 2000 napisów. Każdy z nich jest zapisany w osobnym wierszu i składa się z dokładnie 12 znaków spośród: o, +, *.

Napisz program (lub kilka programów) znajdujący(-ch) odpowiedzi do podanych zadań. Każdą odpowiedź zapisz w pliku wyniki4.txt i poprzedź ją numerem oznaczającym zadanie.

Do Twojej dyspozycji jest plik symbole_przyklad.txt, który zawiera 20 wierszy danych spełniających warunki zadania. Odpowiedzi dla pliku symbole_przyklad.txt są podane pod każdym zadaniem.

Pamiętaj, że Twój program musi ostatecznie zadziałać na pliku symbole.txt zawierającym 2000 napisów.

Zadanie 4.1

Podaj wszystkie takie napisy z pliku symbole.txt, które są palindromami (czytane od przodu i od tyłu są takie same). Wypisz je po jednym w wierszu, w kolejności takiej jak w pliku symbole.txt.

Odpowiedź dla pliku symbole_przyklad.txt to oooo+**+oooo (w tym pliku jest jeden palindrom).

Kliknij Pokaż odpowiedź, aby zobaczyć wzorcowe rozwiązanie z klucza CKE.

Zadanie 4.2

Podaj, ile jest takich napisów w pliku symbole.txt, które nie są palindromami, ale staną się nimi, jeśli zmienimy w nich dokładnie jeden znak.

Uwaga: nie liczymy słów, które już są palindromami.

Odpowiedź dla pliku symbole_przyklad.txt to 1 (jest to napis +++++++++*).

Poniżej wpisz odpowiedź dla pełnego pliku symbole.txt i kliknij Sprawdź.

Liczba napisów:

Zadanie 4.3

W pliku symbole.txt szukamy „kwadratów" złożonych z dziewięciu sąsiadujących identycznych symboli:

+ + +          o o o          * * *
+ + +   lub    o o o   lub    * * *
+ + +          o o o          * * *

Podaj, ile takich kwadratów występuje w pliku symbole.txt. Jeżeli w pliku występuje jeden taki kwadrat, podaj numer wiersza i numer pozycji w wierszu (licząc od 1) jego środkowego pola. Jeżeli jest więcej takich kwadratów, podaj numer wiersza i numer pozycji w wierszu dla środkowego pola każdego z nich.

Przykład:

Poniżej podano 5 wierszy przykładowych danych (po 12 znaków w każdym wierszu):

1. + * * + o * o + + * o +
2. + + + o o o o * o * * *
3. + o * o o o o * * + + +
4. * + * o o o o o o + + +
5. o * * o + + + o + + + +

Mamy tutaj trzy kwadraty złożone z 9 identycznych symboli: pierwszy ma środek w wierszu 3 na pozycji 5, drugi – w wierszu 3 na pozycji 6, a trzeci – w wierszu 4 na pozycji 11.

Odpowiedź dla symbole_przyklad.txt to 1 6 3 (1 kwadrat, środkowe pole w wierszu 6, na pozycji 3).

Kliknij Pokaż odpowiedź, aby zobaczyć wzorcowe rozwiązanie z klucza CKE.

Zadanie 4.4

Informacja do zadań 4.4. i 4.5.

Każdy z napisów podanych w pliku symbole.txt będziemy traktować jako liczbę zapisaną w systemie trójkowym, w którym:

  • znak o odpowiada cyfrze 0
  • znak + odpowiada cyfrze 1
  • znak * odpowiada cyfrze 2

Podaj największą liczbę spośród liczb zapisanych w pliku symbole.txt. W odpowiedzi podaj tę liczbę w zapisie dziesiętnym oraz napis jej odpowiadający.

Odpowiedź dla pliku symbole_przyklad.txt to 519789 **+oooo++o

Poniżej wpisz odpowiedź dla pełnego pliku symbole.txt i kliknij Sprawdź.

Liczba w zapisie dziesiętnym:

Napis:

Zadanie 4.5

Oblicz sumę wszystkich liczb z pliku symbole.txt. Podaj jej wartość w zapisie dziesiętnym oraz w zapisie trójkowym z użyciem symboli: o, +, *.

Odpowiedź dla pliku symbole_przyklad.txt to 4841542 +oooo****+oo+o+

Poniżej wpisz odpowiedź dla pełnego pliku symbole.txt i kliknij Sprawdź.

Suma w zapisie dziesiętnym:

Suma w zapisie trójkowym:

06

Zadanie 5. Martianeum

W 2033 roku na Marsie wylądowała automatyczna stacja wydobywcza wyposażona w transporter i w autonomiczny dron pobierający ładunki skał zawierających minerał niewystępujący na Ziemi – martianeum.

Stacja działa według następujących zasad:

  • dron codziennie przywozi ładunek z pewnego obszaru Marsa
  • stacja waży ładunek przywieziony przez drona i bada zawartość martianeum
  • jeśli zawartość martianeum w przywiezionym ładunku wynosi co najmniej 1%, to stacja automatycznie wydobywa cały minerał z tego ładunku
  • jeśli na koniec dnia (po wydobyciu martianeum) ilość minerału na stacji osiągnie co najmniej 100 kg, to transporter zabiera 100 kg na orbitę, skąd ładunek jest wysyłany na Ziemię, a transporter wraca do stacji (jeśli na stacji zgromadzone jest więcej niż 100 kg, to nadmiar pozostaje na stacji)
  • początkowy stan magazynu na stacji – 0 kg martianeum.

W pliku tekstowym martianeum.txt w kolejnych wierszach zapisano dane z lat 2033–2038:

  • data – data przywozu ładunku w formacie rrrr-mm-dd
  • nazwa_obszaru – nazwa obszaru Marsa, z którego ładunek został pobrany
  • masa [kg] – masa ładunku drona w kilogramach
  • zawartość [%] – zawartość martianeum w próbce w % (nieujemna liczba z jednym miejscem po przecinku, np. 0,1 oznacza 0,1%)

Dane w pliku rozdzielono znakami tabulacji.

Przykład:

data         nazwa_obszaru    masa [kg]    zawartosc [%]
2033-03-03   Cebrenia         27,8         0,2
2033-03-04   Amenthes         11,8         1,7
2033-03-05   Noachis          21,0         6,0
2033-03-06   Coprates         26,3         11,4
2033-03-07   Ismenius Lacus   28,8         0,0
2033-03-08   Mare Boreum      29,2         0,0

Z wykorzystaniem danych zawartych w pliku martianeum.txt oraz dostępnych narzędzi informatycznych wykonaj podane zadania. Wyniki zapisz w pliku tekstowym wyniki5.txt. Odpowiedź do każdego zadania poprzedź numerem tego zadania.

Zadanie 5.1

Podaj łączną masę ładunków drona oraz łączną masę martianeum wydobytego przez stację.

Łączna masa ładunków: kg

Łączna masa martianeum: kg

Zadanie 5.2

Podaj nazwę obszaru, dla którego średnia masa przywiezionych ładunków jest najmniejsza.

Nazwa obszaru:

Zadanie 5.3

Czas pracy stacji dzielimy na kolejne 7-dniowe okresy. Pierwszy okres obejmuje dni od 03.03.2033 do 09.03.2033, drugi – od 10.03.2033 do 16.03.2033 itd.

Podaj największą łączną masę ładunków przywiezionych w ciągu kolejnych 7-dniowych okresów oraz podaj datę początku okresu, w którym przywieziono tę największą masę.

Największa łączna masa: kg

Data początku okresu:

Zadanie 5.4

Wykonaj zestawienie, w którym dla każdego obszaru podasz, ile razy dron przewoził ładunek z tego obszaru w poszczególnych latach.

Na podstawie wykonanego zestawienia utwórz wykres skumulowany kolumnowy. Pamiętaj o czytelnym opisie wykresu: na osi X umieść nazwy obszarów, dodaj opisy osi – „nazwy obszarów" dla osi X i „liczba przewozów ładunku" dla osi Y, tytuł oraz legendę zawierającą kolejne lata.

Kliknij Pokaż odpowiedź, aby zobaczyć wzorcowe rozwiązanie z klucza CKE – zestawienie oraz gotowy wykres.

Zadanie 5.5

Uwzględnij zasady działania stacji opisane na początku zadania i podaj:

  • ile razy stacja wysyłała ładunek na orbitę
  • datę pierwszego transportu na orbitę
  • datę ostatniego transportu na orbitę.

Liczba wysyłek na orbitę:

Data pierwszego transportu:

Data ostatniego transportu:

07

Zadanie 6. Poszukiwanie wody na Marsie

W trzech plikach tekstowych o nazwach laziki.txt, obszary.txt, pomiary.txt zapisano informacje zawierające dane o poszukiwaniu wody na Marsie w latach 2050–2080. Łaziki zasilane energią słoneczną poruszają się po różnych obszarach Marsa i wykonują pomiary georadarowe, na podstawie których szacują ilość wody i głębokość, na której się ona znajduje. Pierwszy wiersz każdego z plików jest wierszem nagłówkowym, a dane w wierszach rozdzielono znakami tabulacji.

Plik o nazwie laziki.txt zawiera informacje o różnych łazikach, które wykonywały pomiary. W każdym wierszu tego pliku znajdują się:

  • nr_lazika – co najwyżej trzycyfrowy, unikatowy numer łazika
  • nazwa_lazika – nazwa łazika (tekst do 50 znaków)
  • rok_wyslania – rok startu z Ziemi
  • wsp_ladowania – współrzędne lądowania na Marsie oddzielone znakiem przecinka i spacją

Przykład:

nr_lazika   nazwa_lazika   rok_wyslania   wsp_ladowania
1           Mariner 3      2049           50.51N, 70.01E
2           Mariner 6      2050           11.90N, 119.49E
3           Mariner 7      2050           44.90S, 130.80W

Plik o nazwie obszary.txt zawiera informacje o obszarach na Marsie. W każdym wierszu tego pliku znajdują się:

  • kod_obszaru – pięcioznakowy, unikatowy kod obszaru
  • nazwa_obszaru – nazwa obszaru (tekst do 50 znaków)

Przykład:

kod_obszaru   nazwa_obszaru
MC-01         Mare Boreum
MC-02         Diacria
MC-03         Arcadia

Plik o nazwie pomiary.txt zawiera informacje o wynikach badań georadarowych wykonanych przez łaziki. W każdym wierszu tego pliku znajdują się:

  • nr_lazika – co najwyżej trzycyfrowy numer łazika
  • data_pomiaru – data wykonania pomiaru (w formacie rrrr-mm-dd)
  • kod_obszaru – pięcioznakowy kod obszaru, na którym został wykonany pomiar
  • wspolrzedne – współrzędne wykonania pomiaru, oddzielone znakiem przecinka i spacją
  • glebokosc – szacowana głębokość, na której znajduje się woda (w metrach)
  • ilosc – szacowana ilość wody (w m³)

Przykład:

nr_lazika   data_pomiaru   kod_obszaru   wspolrzedne       glebokosc   ilosc
17          2061-06-03     MC-13         13.17N, 77.80E    344         5622
17          2056-06-02     MC-14         14.93N, 106.00E   43          2054
47          2075-10-18     MC-05         45.57N, 3.30E     9           23366

Z wykorzystaniem danych zawartych w podanych plikach oraz dostępnych narzędzi informatycznych podaj odpowiedzi do zadań 6.1.–6.5. Odpowiedzi zapisz w pliku wyniki6.txt, a każdą z nich poprzedź numerem odpowiedniego zadania.

Zadanie 6.1

Podaj lata, w których wysłano z Ziemi najwięcej łazików, oraz liczbę tych łazików.

rok_wyslanialiczba

Zadanie 6.2

Podaj nazwę obszaru, na którym znaleziono łącznie we wszystkich pomiarach najwięcej m³ wody na głębokości do 100 metrów włącznie, oraz podaj liczbę m³ tej wody. Jest jeden taki obszar.

Nazwa obszaru:

Liczba m³ wody:

Zadanie 6.3

Podaj nazwę łazika, który wykonywał pomiary w najdłuższym okresie, licząc od pierwszego (najwcześniejszego) do ostatniego (najpóźniejszego) pomiaru. Podaj datę pierwszego i ostatniego pomiaru wykonanego przez ten łazik.

Nazwa łazika:

Data pierwszego pomiaru:

Data ostatniego pomiaru:

Zadanie 6.4

Podaj nazwy obszarów na Marsie, na których żaden z łazików nie wykonał żadnego pomiaru w tym samym roku, w którym został wysłany z Ziemi.

Kliknij Pokaż odpowiedź, aby zobaczyć wzorcowe rozwiązanie z klucza CKE.

Zadanie 6.5

Podaj nazwy łazików, które wylądowały na półkuli południowej, ale wykonywały pomiary na obu półkulach: północnej (N) i południowej (S).

Kliknij Pokaż odpowiedź, aby zobaczyć wzorcowe rozwiązanie z klucza CKE.