Wróć do: Arkusze maturalne
2024MAJ

Matura z informatyki 2024 – maj, poziom rozszerzony

Formuła 2023arkusz CKE · poziom rozszerzony

Arkusz maturalny z informatyki rozszerzonej, maj 2024 (Formuła 2023). 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 2024 (Formuła 2023). Egzamin trwał 210 minut, można było zdobyć 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 arkuszu PDF.

02

Zadanie 1. Plansza

Dana jest prostokątna plansza złożona z n wierszy i m kolumn zawierająca n * m pól. Wiersze są ponumerowane od góry kolejnymi liczbami 1, 2, …, n, natomiast kolumny od lewej do prawej kolejnymi liczbami 1, 2, …, m. Każde pole jest albo białe, albo czarne.

Planszę możemy opisać jako tablicę dwuwymiarową A[1..n][1..m], w której A[i][j] = 0, jeśli pole w i-tym wierszu i j-tej kolumnie jest czarne, natomiast A[i][j] = 1, jeśli to pole jest białe. Pola w lewym górnym rogu oraz prawym dolnym rogu zawsze są białe (czyli A[1][1] = 1 oraz A[n][m] = 1).

Rozważmy następujący algorytm, w którym jest wykorzystywana pomocnicza tablica P[1..n][1..m], przyjmująca wartości logiczne (PRAWDA albo FAŁSZ).

Specyfikacja
Dane n, m – liczby całkowite dodatnie, wymiary planszy A[1..n][1..m] – opis planszy Wynik PRAWDA albo FAŁSZ
P[1][1]  PRAWDA
dla i = 1, 2, ..., n wykonuj
    dla j = 1, 2, .., m wykonuj
        jeżeli A[i][j] = 0
            P[i][j]  FAŁSZ
        w przeciwnym przypadku
            jeżeli i = 1 oraz j  1
                P[i][j]  P[i][j – 1]
            jeżeli i  1 oraz j = 1
                P[i][j]  P[i – 1][j]
            jeżeli i  1 oraz j  1
                P[i][j]  P[i][j – 1] lub P[i – 1][j]
podaj wynik P[n][m]

Zadanie 1.1

Podaj wynik działania algorytmu dla plansz podanych na rysunkach poniżej, gdzie n to liczba wierszy, a m to liczba kolumn danej planszy.

a) n = 3, m = 3

Plansza 3×3 do podpunktu a)

Wynik:

b) n = 5, m = 3

Plansza 5×3 do podpunktu b)

Wynik:

c) n = 5, m = 5

Plansza 5×5 do podpunktu c)

Wynik:

Zadanie 1.2

Przy założeniu, że lewy górny i prawy dolny róg planszy są białe, podaj przykład planszy (zamaluj odpowiednie pola lub wpisz w nie zera):

a) o 5 wierszach i 5 kolumnach, na której co najwyżej 2 pola są czarne, a wynikiem działania algorytmu jest FAŁSZ

b) o 4 wierszach i 4 kolumnach, na której co najmniej 9 pól jest czarnych, a wynikiem działania algorytmu jest PRAWDA.

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

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

Zadanie 1.3

Dana jest kwadratowa plansza o n wierszach i n kolumnach.

Podaj, jaka jest największa możliwa liczba czarnych pól na tej planszy, dla których wynikiem działania algorytmu jest PRAWDA.

Odpowiedź:

03

Zadanie 2. Cyfry

Przeanalizuj poniższy algorytm, który dla danej nieujemnej liczby całkowitej n oblicza liczbę całkowitą c.

b  1
c  0
dopóki n > 0 wykonuj
    a  n mod 10
    n  n div 10
    jeżeli (a mod 2 = 0)
        c  c + b * (a div 2)
    w przeciwnym razie
        c  c + b
    b  b * 10

Uwaga: x mod y, x div y oznaczają – odpowiednio – resztę i iloraz z dzielenia całkowitego x przez y.

Zadanie 2.1

Uzupełnij poniższą tabelę – dla każdej z podanych liczb wpisz wartość zmiennej c po wykonaniu algorytmu oraz liczbę wykonań instrukcji c ← c + b.

nWartość c po wykonaniu algorytmu dla danego nLiczba wykonań instrukcji c ← c + b
33658113143
542102
87654321012345678

Zadanie 2.2

Podaj wartość c po wykonaniu algorytmu dla osiemnastocyfrowej liczby całkowitej n, w której pierwszych sześć cyfr to 3, następnych sześć cyfr to 6, a pozostałych sześć cyfr to 9.

c =

04

Zadanie 3. Nieparzysty skrót

Nieparzystym skrótem dodatniej liczby całkowitej n nazwiemy dodatnią liczbę całkowitą m, która powstaje przez usunięcie cyfr parzystych z zapisu dziesiętnego liczby n. Nieparzysty skrót liczby całkowitej n nie istnieje, gdy jej zapis dziesiętny składa się tylko z cyfr parzystych.

Przykład:

Nieparzystym skrótem liczby 294762 jest liczba 97.
Nieparzystym skrótem liczby 39101 jest liczba 3911.
Nieparzysty skrót liczby 224 nie istnieje.

Zadanie 3.1

W postaci pseudokodu lub w wybranym języku programowania napisz funkcję, która dla dodatniej całkowitej liczby n, takiej że istnieje dla niej nieparzysty skrót, wyznaczy liczbę m – nieparzysty skrót liczby n.

Uwaga: Twój algorytm może używać wyłącznie zmiennych przechowujących liczby całkowite oraz może operować wyłącznie na liczbach całkowitych. W zapisie możesz wykorzystać tylko operacje arytmetyczne: dodawanie, odejmowanie, mnożenie, dzielenie, dzielenie całkowite, resztę z dzielenia oraz porównywanie liczb, instrukcje sterujące, przypisania do zmiennych lub samodzielnie napisane funkcje, wykorzystujące wyżej wymienione operacje. Zabronione jest używanie funkcji wbudowanych oraz operatorów innych niż wymienione.

Specyfikacja
Dane n – dodatnia liczba całkowita, taka że istnieje dla niej nieparzysty skrót Wynik mnieparzysty skrót liczby n

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

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

Zadanie 3.2

Plik skrot.txt zawiera 200 dodatnich liczb całkowitych, mniejszych od 30 000. Każda liczba jest zapisana w osobnym wierszu. Dla co najmniej jednej z tych liczb nie istnieje nieparzysty skrót.

Napisz program, który wyznaczy liczbę wszystkich liczb z pliku skrot.txt, dla których nie istnieje nieparzysty skrót, oraz poda największą z nich. Odpowiedź zapisz w pliku wyniki3_2.txt.

Plik skrot_przyklad.txt zawiera 20 liczb mniejszych od 30 000. Dla danych zawartych w pliku skrot_przyklad.txt prawidłową odpowiedzią jest:

2
2428

(w pliku są dwie liczby, dla których nie istnieje nieparzysty skrót: 266 i 2428; 2428 jest największą z nich).

Poniżej podaj odpowiedź dla pełnego pliku skrot.txt – liczbę liczb bez nieparzystego skrótu oraz największą z nich – i kliknij Sprawdź.

Zadanie 3.3

Plik skrot2.txt zawiera 200 dodatnich liczb całkowitych, mniejszych od 30 000. Każda liczba jest zapisana w osobnym wierszu. Dla każdej z tych liczb istnieje nieparzysty skrót.

Napisz program, który wypisze te liczby z pliku skrot2.txt, dla których największy wspólny dzielnik liczby i jej nieparzystego skrótu jest równy 7. Odpowiedź zapisz w pliku wyniki3_3.txt. Twój program powinien wypisać w każdym wierszu wyniku po jednej liczbie z pliku skrot2.txt, dla której jest spełniony powyższy warunek.

Plik skrot2_przyklad.txt zawiera 20 liczb spełniających warunki zadania. Dla danych zawartych w pliku skrot2_przyklad.txt prawidłową odpowiedzią jest:

4872
23527

Poniżej podaj odpowiedź dla pełnego pliku skrot2.txt – każdą liczbę w osobnym wierszu – i kliknij Sprawdź.

05

Zadanie 4. Liczby

Plik liczby.txt składa się z dwóch wierszy:

pierwszy wiersz pliku zawiera 3000 liczb pierwszych z przedziału [2, 2000]
drugi wiersz pliku zawiera 20 liczb całkowitych z przedziału [2, 1 000 000 000].

Liczby w wierszach są rozdzielone znakami spacji.

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

Do Twojej dyspozycji jest plik liczby_przyklad.txt, który zawiera 200 liczb w pierwszym wierszu (są to wyłącznie liczby 2, 3, 5, 7 i 31) oraz 20 liczb w drugim wierszu. Odpowiedzi dla danych z tego pliku są umieszczone pod każdym zadaniem.

Pamiętaj, że Twój program musi ostatecznie zadziałać na pliku liczby.txt z 3000 liczb w pierwszym wierszu.

Zadanie 4.1

Podaj, ile liczb z pierwszego wiersza jest dzielnikiem jakiejkolwiek liczby spośród liczb z drugiego wiersza.

Dla pliku liczby_przyklad.txt odpowiedzią jest 199 (tylko liczba 31, która występuje raz, nie jest dzielnikiem żadnej z liczb w drugim wierszu).

Poniżej podaj odpowiedź dla pełnego pliku liczby.txt i kliknij Sprawdź.

Odpowiedź:

Zadanie 4.2

Spośród liczb z pierwszego wiersza podaj liczbę, która jest sto pierwszą liczbą w kolejności, licząc od największej po ich uporządkowaniu.

Przykład: wśród liczb 2, 4, 2, 3, 3, 4 drugą w kolejności, licząc od największej, jest liczba 4.

Dla pliku liczby_przyklad.txt odpowiedzią jest 5.

Poniżej podaj odpowiedź dla pełnego pliku liczby.txt i kliknij Sprawdź.

Odpowiedź:

Zadanie 4.3

Dla każdej z liczb z drugiego wiersza rozstrzygnij, czy da się ją przedstawić jako iloczyn jedynie liczb z pierwszego wiersza. Przy tym liczba wystąpień danego czynnika w iloczynie nie może być większa niż liczba wystąpień tego czynnika w pierwszym wierszu. Znajdź wszystkie liczby, które da się tak przedstawić, i je wypisz.

Dla pliku liczby_przyklad.txt odpowiedzią są liczby:

10 12 14 15 18 20 21 25 27 28

(liczbę 16 można przedstawić jako iloczyn 2·2·2·2, jednak w pierwszym wierszu liczba 2 występuje tylko dwa razy, więc 16 nie należy do rozwiązania. Podobnie jest z liczbą 24, którą można przedstawić jako iloczyn 2·2·2·3).

Poniżej podaj odpowiedź dla pełnego pliku liczby.txt – każdą liczbę w osobnym wierszu – i kliknij Sprawdź.

Zadanie 4.4

Znajdź w ciągu liczb z pierwszego wiersza spójny fragment, który zawiera co najmniej 50 elementów i którego średnia arytmetyczna jest największa. Jeżeli jest więcej niż jeden taki fragment, wybierz ten, który występuje jako pierwszy w pliku liczby.txt.

W odpowiedzi wypisz:

znalezioną najwyższą średnią
liczbę elementów ciągu z tą najwyższą średnią
liczbę, która jest pierwszym elementem tego ciągu.

Dla pliku liczby_przyklad.txt odpowiedzią jest:

5,52 50 5

(największa średnia to 5,52 dla 50 liczb zaczynających się od liczby 5).

Poniżej podaj odpowiedź dla pełnego pliku liczby.txt i kliknij Sprawdź.

Najwyższa średnia:

Liczba elementów w ciągu:

Liczba początkowa (pierwszy element ciągu):

06

Zadanie 5

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

NrZdanieP / F
1.HTTP to protokół komunikacyjny opisujący sposób przekazywania poczty elektronicznej w internecie.
2.FTP to protokół zamiany nazw domenowych na adresy IP.
3.DHCP to protokół umożliwiający hostom uzyskanie od serwera danych konfiguracyjnych, np. adresu IP, adresu bramy sieciowej, adresu serwera DNS.
07

Zadanie 6

Wykonaj działania na liczbach zapisanych w systemie trójkowym i systemie dziewiątkowym. Wyniki podaj w systemie trójkowym.

101112₃ + 121₉ =

101112₃ – 121₉ =

08

Zadanie 7. Hurtownia

Pewna hurtownia sprzedaje jabłka. W pliku jablka.txt znajduje się 2500 wierszy z danymi dotyczącymi sprzedaży jabłek od 3 stycznia 2022 roku do 31 grudnia 2022 roku. W każdym wierszu podane są dane opisujące jedną transakcję sprzedaży, oddzielone pojedynczymi znakami tabulacji:

data sprzedaży zapisana w formacie rrrr-mm-dd
nazwa odmiany jabłka
kod, który określa, czy odmiana jest: L – letnia, J – jesienna czy Z – zimowa
numer NIP klienta (13-znakowy tekst)
liczba kilogramów sprzedanego towaru.

Fragment pliku jablka.txt:

2022-01-03JonagoldZ128-29-15-591470
2022-01-03JonagoldZ192-09-72-275410
2022-01-03JonagoredZ140-36-11-559242

Cena sprzedaży jednego kilograma jabłek zależy od odmiany jabłek. W pliku cennik.txt jest podana cena w złotych 1 kg jabłek każdej odmiany.

Fragment pliku cennik.txt:

Alwa2,9
Antonowka3,2
Cortland3,2

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

Zadanie 7.1

Dla każdego klienta policz, ile kupił on łącznie (we wszystkich swoich transakcjach) kilogramów jabłek odmian zimowych. Podaj numery NIP trzech klientów, którzy kupili najwięcej jabłek odmian zimowych (Z), oraz podaj dla każdego z nich liczbę kilogramów jabłek odmian zimowych przez nich kupionych.

Numer NIPLiczba kilogramów jabłek odmian zimowych

Zadanie 7.2

Przychód z pojedynczej sprzedaży to cena sprzedaży jednego kilograma jabłek pomnożona przez liczbę kilogramów. Podaj całkowity przychód hurtowni uzyskany w całym okresie. Podaj nazwę odmiany jabłek, która dała największy przychód.

Całkowity przychód [zł]:

Odmiana z największym przychodem:

Zadanie 7.3

Wykonaj zestawienie, w którym dla każdego miesiąca roku 2022 podasz nazwę najbardziej popularnej odmiany w tym miesiącu, czyli takiej, której w danym miesiącu sprzedano najwięcej. Na podstawie wykonanego zestawienia utwórz wykres kolumnowy ilustrujący wielkości sprzedaży najpopularniejszych odmian jabłek w poszczególnych miesiącach. Pamiętaj o czytelnym opisie wykresu – na osi X umieść dla każdego miesiąca jego nazwę połączoną z nazwą najbardziej popularnej odmiany w tym miesiącu, dodaj opis osi Y i tytuł wykresu.

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

Zadanie 7.4

Hurtownia ma system premiowania klientów hurtowych. Klient otrzymuje przy zakupie rabat, którego wysokość zależy od łącznej ilości jabłek zakupionych do tej pory przez tego klienta, wliczając w to jabłka zakupione w bieżącej transakcji.

Wysokość rabatu za każdy kilogram w bieżącej transakcji wynosi:

5 gr, jeśli klient dotychczas zakupił co najmniej 15 000 kg, ale mniej niż 20 000 kg
10 gr, jeśli klient dotychczas zakupił co najmniej 20 000 kg.

Podaj, w ilu transakcjach hurtownia udzieliła rabatu, oraz podaj łączną wartość tych rabatów w złotych.

Przykład:

Załóżmy, że przed 1.04.2022 klient z NIP 128-29-15-591 zakupił łącznie 10 000 kg jabłek, klient 192-09-72-275 nabył 14 900 kg, a klient 140-36-11-559 – kupił 19 900 kg. Wtedy dla przykładowych danych 1.04.2022:

2022-04-01JonagoldZ128-29-15-591470
2022-04-01JonagoldZ192-09-72-275410
2022-04-01JonagoredZ140-36-11-559242

pierwszy klient, po dokonaniu transakcji 1.04.2022, będzie miał już 10 470 kg zakupionych jabłek i dla tej transakcji jeszcze nie należy się rabat
drugi klient, po dokonaniu transakcji 1.04.2022, będzie miał już 15 310 kg zakupionych jabłek, czyli podczas tej transakcji otrzyma 5 gr rabatu na każdy kilogram kupowanych tego dnia jabłek (5 gr * 410 = 20,50 zł rabatu)
trzeci klient, po dokonaniu transakcji 1.04.2022, będzie miał już 20 142 kg zakupionych jabłek i podczas tej transakcji otrzyma 10 gr rabatu za każdy kilogram (10 gr * 242 = 24,20 zł rabatu).

Liczba transakcji z rabatem:

Łączna wartość rabatów [zł]:

09

Zadanie 8. Rejestr wykroczeń

W trzech plikach tekstowych o nazwach: kierowcy.txt, taryfikator.txt, rejestr.txt, zapisano dane związane z przekroczeniem dozwolonych prędkości pojazdów na pewnej trasie w okresie 2023-01-01 – 2023-12-30 (wszystkie dane są fikcyjne i wygenerowane na potrzeby zadania). Pierwszy wiersz każdego z plików jest wierszem nagłówkowym, a dane w wierszach rozdzielono znakiem średnika.

Plik o nazwie kierowcy.txt zawiera informacje o 1000 osobach będących właścicielami samochodów. W każdym wierszu znajduje się:

PoleOpis
IdOsobyidentyfikator kierowcy
Imieimię
Nazwiskonazwisko
NrRejestracyjnynumer rejestracyjny samochodu

Przykład:

IdOsoby;Imie;Nazwisko;NrRejestracyjny
1;Echo;Ayala;FVX4190
2;Nolan;Stein;DUG5882
3;Lee;Joseph;TBG6984

Plik o nazwie taryfikator.txt zawiera informacje o 6 rodzajach wykroczeń związanych z przekroczeniem prędkości. W każdym wierszu znajdują się:

PoleOpis
IdWykroczeniaidentyfikator wykroczenia
Wykroczenieopis wykroczenia
Punktyliczba punktów karnych za dane wykroczenie
Kwotakwota mandatu, jaką należy zapłacić za to wykroczenie

Przykład:

IdWykroczenia;Wykroczenie;Punkty;Kwota
1;Przekroczenie predkosci do 10 km/h;0;50
2;Przekroczenie predkosci od 11 do 20 km/h;2;100
3;Przekroczenie predkosci od 21 do 30 km/h;4;200
4;Przekroczenie predkosci od 31 do 40 km/h;6;300
5;Przekroczenie predkosci od 41 do 50 km/h;8;400
6;Przekroczenie predkosci od 51 km/h;10;500

Plik o nazwie rejestr.txt zawiera 5000 zarejestrowanych wykroczeń związanych z przekroczeniem prędkości. W każdym wierszu znajdują się:

PoleOpis
IdZdarzeniaidentyfikator zdarzenia
Datadata zdarzenia w formacie rrrr-mm-dd
IdOsobyidentyfikator kierowcy
IdWykroczeniaidentyfikator wykroczenia

Przykład:

IdZdarzenia;Data;IdOsoby;IdWykroczenia
1;2023-01-01;617;1
2;2023-01-01;956;4

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

Zadanie 8.1

Podaj imię i nazwisko kierowcy, dla którego suma kwot za wszystkie mandaty była największa, oraz podaj tę największą sumę. Jest tylko jeden taki kierowca.

Imię i nazwisko kierowcy:

Suma kwot mandatów:

Zadanie 8.2

W którym miesiącu kierowcy otrzymali najmniej punktów karnych (łącznie) za wykroczenia polegające na przekroczeniu dozwolonej prędkości o więcej niż 20 km/h (wykroczenia o identyfikatorach od 3 do 6)? Podaj miesiąc oraz łączną liczbę punktów karnych z tego miesiąca.

Miesiąc:

Łączna liczba punktów karnych:

Zadanie 8.3

Wykonaj zestawienie numerów rejestracyjnych samochodów wraz z imionami i nazwiskami ich właścicieli, którzy nie figurują w rejestrze wykroczeń. Zestawienie posortuj alfabetycznie według numerów rejestracyjnych samochodów.

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

Zadanie 8.4

Baza danych rejestru wykroczeń została zmodyfikowana. Dodano nową tabelę Fotoradar, wraz z polami IdFotoradaru, Miejscowosc i DozwolonaPredkosc. Natomiast do tabeli Rejestr zostało dodane pole IdFotoradaru, w którym dla każdego rekordu zapisano identyfikator tego fotoradaru, który zarejestrował dane wykroczenie.

Załóżmy, że w bazie istnieją fotoradary, które nie zarejestrowały żadnych wykroczeń. Zapisz w języku SQL zapytanie, w wyniku którego otrzymasz identyfikatory tych fotoradarów.

Kliknij Pokaż odpowiedź, aby zobaczyć wzorcowe zapytanie z klucza CKE.

Uwaga: to zadanie otwarte – zapytanie z klucza CKE jest jedynie przykładowe; to samo zadanie można rozwiązać też innym poprawnym zapytaniem SQL.