Wróć do: Arkusze maturalne
2024CZERWIEC

Matura z informatyki 2024 – czerwiec, poziom rozszerzony

Formuła 2015arkusz CKE · poziom rozszerzony

Arkusz maturalny z informatyki rozszerzonej, czerwiec 2024 (Formuła 2015, termin dodatkowy). 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 czerwiec 2024 (Formuła 2015, termin dodatkowy). Egzamin składał się z dwóch części: części I (zadania 1–3, 60 minut, 15 punktów) oraz części II (zadania 4–6, 150 minut, 35 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) kliknij Pokaż odpowiedź, aby zobaczyć wzorcowe rozwiązanie z klucza CKE. Pełną treść zadań znajdziesz też w arkuszu PDF.

02

Zadanie 1. Liczby nieliczne

Dodatnią liczbę całkowitą L nazywamy liczbą nieliczną, jeżeli w jej zapisie binarnym cyfry 1 nie sąsiadują ze sobą.

Zadanie 1.1

Uzupełnij tabelę – w drugiej kolumnie podaj zapis binarny liczby podanej w zapisie o podstawie 8 oraz liczby podanej w zapisie szesnastkowym, w trzeciej kolumnie wpisz PRAWDA gdy podana liczba jest nieliczna, albo FAŁSZ – w przeciwnym przypadku.

Liczba LZapis binarny liczby LCzy liczba L jest nieliczna?
259₁₀100000011FAŁSZ
20012₈
3574₁₆

Zadanie 1.2

W wybranej przez siebie notacji (w pseudokodzie lub języku programowania) napisz funkcję czy_nieliczna(k), która sprawdzi, czy dana dodatnia liczba k jest liczbą nieliczną.

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, reszta z dzielenia), porównywanie liczb, instrukcje sterujące, przypisania do zmiennych lub samodzielnie napisane funkcje, wykorzystujące powyższe operacje. Zabronione jest używanie funkcji wbudowanych oraz operatorów innych niż wymienione, dostępnych w językach programowania. W szczególności nie wolno używać żadnych funkcji zamiany zapisu liczb między systemami pozycyjnymi.

Specyfikacja
Dane: k – dodatnia liczba całkowita Wynik: PRAWDA – jeżeli liczba k, jest liczbą nieliczną, albo FAŁSZ – w przeciwnym przypadku

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.

03

Zadanie 2. Funkcja

Dane są dodatnia liczba całkowita n oraz n-elementowy ciąg liczb, zapisany w tablicy A[1..n]. Przeanalizuj poniższy algorytm.

Algorytm 1:
    p  1
    m  1
    dla  i = 1, 2, …, n  wykonuj
            licz  0
            dla  j = 1, 2, …, n  wykonuj
                    jeżeli  A[i] = A[j]  wykonuj
                            licz  licz + 1
            jeżeli  licz > m  wykonuj
                    p  i
                    m  licz

Zadanie 2.1

Jakie wartości przyjmą: p, A[p] i m po wykonaniu powyższego algorytmu dla ciągu z tablicy A = [7, 9, 15, 0, 6, 7, 6, 10, 15, 6, 0] ?

p =

A[p] =

m =

Zadanie 2.2

Podaj, ile razy w algorytmie 1. dla podanych wartości n wykonywana jest operacja sprawdzenia, czy A[i] = A[j].

nIle razy sprawdzany jest warunek A[i] = A[j]
3
n

Zadanie 2.3

Uzupełnij luki w algorytmie 2. tak, by stanowił on odpowiednik algorytmu 1., w którym operacja porównania A[i] = A[j] jest wykonywana nie więcej niż n(n-1)2 razy.

Algorytm 2:
    p  1
    m  1
    dla i =  wykonuj
            licz  
            dla j =  wykonuj
                    jeżeli  A[i] = A[j]  wykonuj
                            licz  licz + 1
            jeżeli licz > m wykonuj
                    p  i
                    m  licz

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

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

W tabeli miasta zamieszczono informacje o liczbie ludności miast Polski. Zawartość tabeli miasta:

identyfikatormiastowojewodztwoludnosc
767Szamotuływielkopolskie18853
768Szczawnicamałopolskie5711
769Szczawno-Zdrójdolnośląskie5569
770Szczebrzeszynlubelskie4964
771Szczecinzachodniopomorskie401907

Dla podanych danych w wyniku zapytania

SELECT ludnosc
FROM miasta
WHERE identyfikator > 770 OR miasto = "Szamotuły"

otrzymamy

NrZdanieP / F
1.dwie liczby
2.pusty wynik
3.401907
4.420760

Zadanie 3.2

Wynik dodawania liczb binarnych 1011101₂ oraz 111₂ jest:

NrZdanieP / F
1.równy 1100110₂
2.mniejszy niż 1111111₂
3.większy niż 1110000₂
4.równy 1100100₂
05

Zadanie 4

W pliku slowa.txt danych jest 1000 słów (napisów) złożonych z małych liter alfabetu angielskiego. Słowa mają długość mieszczącą się w przedziale od 1 do 200 znaków.

Napisz program(-my), dający(-e) odpowiedzi do poniższych zadań. Uzyskane odpowiedzi zapisz w pliku wyniki4.txt, a każdą z nich poprzedź numerem odpowiedniego zadania.

Do Twojej dyspozycji jest plik slowa_przyklad.txt, który zawiera 10 słów w podanym formacie. Odpowiedzi dla tego pliku są podane w treści zadań. Pamiętaj, że Twój program musi ostatecznie działać dla pliku slowa.txt, zawierającego 1000 słów.

Zadanie 4.1

Podaj, w ilu spośród podanych słów znajduje się trójliterowy fragment "k?t", gdzie ? oznacza dowolną pojedynczą literę (taki fragment występuje na przykład w słowach "alamakota", albo "brokat", ale nie – w słowie "krata".)

Dla pliku slowa_przyklad.txt odpowiedzią jest
2

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

Odpowiedź:

Zadanie 4.2

Wypisz wszystkie pięcioliterowe fragmenty zaczynające się i kończące literą "e", które zawierają się w słowach z pliku slowa.txt.

Dla pliku slowa_przyklad.txt odpowiedzią jest
erefe efere

Poniżej wpisz wszystkie pięcioliterowe fragmenty dla pełnego pliku slowa.txt (po jednym w wierszu lub oddzielone spacjami) i kliknij Sprawdź.

Zadanie 4.3

Alfabet angielski zawiera 26 liter. Kodowanie ROT13 zamienia każdą literę na literę, która jest na pozycji o 13 miejsc dalej w alfabecie (a→n, b→o itd.), przy czym po przekroczeniu „z" liczymy z powrotem od „a" (czyli m→z, ale n→a, o→b, i tak dalej).

Słowo aren ma ciekawą własność – po zakodowaniu za pomocą ROT13 staje się słowem nera, czyli tym samym słowem czytanym od tyłu. Podaj, ile w pliku slowa.txt jest słów, które mają tę własność. Wypisz ich liczbę oraz najdłuższe z nich.

Dla pliku slowa_przyklad.txt odpowiedzią jest
2
aren
(w pliku slowa_przyklad.txt są 2 słowa o tej własności: aren i bo)

Liczba słów:

Najdłuższe słowo:

Zadanie 4.4

Znajdź i wypisz z pliku slowa.txt wszystkie takie słowa, w których ta sama litera występuje na co najmniej połowie pozycji (przykładowo: w słowie "owocowo" litera „o" ma 4 wystąpienia na ogólną liczbę 7 liter w słowie i spełnia podany warunek, za to w słowie "ambaras" litera „a" ma tylko 3 wystąpienia na 7 liter, więc nie spełnia podanego warunku).

W pliku slowa_przyklad.txt są 4 takie słowa:
terefere
ananas
bo
alabama

Poniżej wpisz wszystkie takie słowa dla pełnego pliku slowa.txt (po jednym w wierszu lub oddzielone spacjami) i kliknij Sprawdź.

06

Zadanie 5. Uzdrowisko

Pewne uzdrowisko słynie z leczniczego źródła wody. W pliku uzdrowisko.txt zapisano przyjazdy i wyjazdy kuracjuszy do tego uzdrowiska w okresie od stycznia do grudnia 2023 roku (wszystkie dane są fikcyjne i wygenerowane na potrzeby zadania).

W każdym wierszu pliku uzdrowisko.txt zapisano następujące dane:

  • datę z zakresu od 1 stycznia 2023 do 31 grudnia 2023 w formacie rrrr-mm-dd (data)
  • liczbę kuracjuszy, którzy przyjechali w podanym dniu do uzdrowiska (przyjechali)
  • liczbę kuracjuszy, którzy w podanym dniu opuścili uzdrowisko (wyjechali).

Dane w wierszach są rozdzielone znakiem tabulacji.

Fragment pliku uzdrowisko.txt:

data          przyjechali     wyjechali
2023-01-01    528             484
2023-01-02    641             625
2023-01-03    352             603
2023-01-04    342             412

Z wykorzystaniem dostępnych narzędzi informatycznych podaj odpowiedzi do poniższych zadań. Odpowiedzi zapisz w pliku wyniki5.txt, a każdą z nich poprzedź numerem odpowiedniego zadania.

Zadanie 5.1

Utwórz zestawienie łącznej liczby kuracjuszy, którzy przyjechali do uzdrowiska w każdym miesiącu 2023 roku. Dla otrzymanego zestawienia sporządź wykres kolumnowy ilustrujący wyniki. Pamiętaj o prawidłowym i czytelnym opisie wykresu (wstaw tytuł i opisy osi).

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

Zadanie 5.2

Znajdź najdłuższy ciąg kolejnych dni, w których liczba kuracjuszy, którzy przyjechali, była większa niż liczba wyjeżdżających. Podaj daty początku i końca tego ciągu.

Data początku:

Data końca:

Zadanie 5.3

Zakładamy, że w dniu 31.12.2022 w uzdrowisku przebywało 10 000 kuracjuszy. Podaj, w jakim dniu po raz pierwszy liczba kuracjuszy (po przyjeździe nowych i wyjeździe wszystkich opuszczających uzdrowisko w danym dniu) przekroczyła 11 000, oraz podaj datę, kiedy liczba kuracjuszy (po przyjeździe nowych i wyjeździe wszystkich opuszczających uzdrowisko w danym dniu) była największa.

Data, kiedy liczba kuracjuszy przekroczyła 11 000:

Data, kiedy liczba kuracjuszy była największa:

Zadanie 5.4

Źródło ma wydajność 3900 litra/dobę. Każdy z kuracjuszy pije dziennie 0,4 litra wody ze źródła. Jeżeli wydajność źródła jest większa niż łączne potrzeby kuracjuszy danego dnia, to pozostałą ilość wody uzdrowisko butelkuje w szklanych butelkach o pojemności 5 litrów (butelki zawsze wypełnia się do pełna, a pozostała woda jest zużywana do innych celów). W przypadku, gdy wydajność dobowa źródła jest zbyt mała, aby zaspokoić potrzeby wszystkich kuracjuszy obecnych w uzdrowisku, pracownicy uzdrowiska brakującą wodę podają z butelek. Przy tym każda otwarta butelka zawsze jest zużywana do końca i w pierwszej kolejności na potrzeby kuracjuszy, tj. jeśli zostanie jakaś część wody w ostatniej użytej butelce, to zostanie wykorzystana do innych celów (nie liczymy jej w następnym dniu).

Uwaga: zakładamy, że:

  • w dniu 31.12.2022 w uzdrowisku przebywało 10 000 kuracjuszy
  • w dniu 31.12.2022 wieczorem w magazynie uzdrowiska znajdowało się 120 sztuk 5-litrowych butelek wody.
  • kuracjusze otrzymują wodę w dniu przyjazdu, a w dniu odjazdu tej wody nie otrzymują

a) Podaj datę, kiedy po raz pierwszy zabrakło zarówno wody ze źródła, jak i wody butelkowanej, aby zaspokoić potrzeby wszystkich kuracjuszy przebywających w danym dniu w uzdrowisku.

b) Podaj łączną liczbę dni, w których zabrakło wody dla wszystkich kuracjuszy.

c) Podaj najmniejszą liczbę butelek wody, jaka powinna znajdować się w dniu 31.12.2022 w magazynie uzdrowiska, aby wody nie zabrakło przez cały rok.

a)

b)

c)

07

Zadanie 6. Szczepienia

W pewnym centrum medycznym odbywają się szczepienia. Lekarz przepisuje pacjentowi odpowiednią dla niego szczepionkę, a każda szczepionka ma rekomendowaną liczbę dawek. Pacjent zostaje uznany za zaszczepionego, jeśli przyjmie wszystkie dawki rekomendowane dla danej szczepionki. Dane dotyczące szczepień od 2 stycznia 2023 do 7 maja 2024 są zapisane w dwóch plikach: szczepionki.txt oraz wizyty.txt. Pierwszy wiersz w każdym pliku jest wierszem nagłówkowym i zawiera nazwy odpowiednich pól. Dane w wierszach rozdzielone są znakiem tabulacji.

Plik o nazwie szczepionki.txt zawiera informacje szczepionkach. W każdym wierszu znajduje się:

  • kod_szczepionki – tekst do 10 znaków, określający jednoznacznie szczepionkę
  • liczba_dawek – liczba rekomendowanych dawek, liczba całkowita większa od 0 i mniejsza od 10

Przykład:

kod_szczepionki     liczba_dawek
sz1_3d              3
sz2_1d              1

Plik o nazwie wizyty.txt zawiera informacje o podanej pacjentowi dawce szczepionki. W każdym wierszu znajduje się:

  • pesel – numer PESEL pacjenta przyjmującego daną dawkę szczepienia, składający się z 11 znaków
  • kod_szczepionki – kod podanej szczepionki
  • data_szczepienia – data szczepienia w formacie rrrr-mm-dd
  • numer_dawki – liczba całkowita mniejsza od 10 określająca, która dawka szczepionki została podana.

Przykład:

Pesel          kod_szczepionki  data_szczepienia  numer_dawki
79051863861    sz16_1d          2023-01-02        1
84100517145    sz13_5d          2023-01-02        1

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

Dla każdej szczepionki podaj, ile łącznie jej dawek zostało podanych pacjentom. Jako wynik podaj listę zawierającą kod szczepionki i liczbę dawek. Lista powinna być posortowana nierosnąco według liczby dawek.

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

Zadanie 6.2

Podaj, ilu różnych pacjentów przyjęło przynajmniej jedną dawkę szczepionki o kodzie sz12_3d. Podaj, ile wśród nich było kobiet (płeć określa przedostatnia cyfra numeru PESEL, cyfra parzysta oznacza płeć żeńską).

Liczba pacjentów:

Liczba kobiet:

Zadanie 6.3

Podaj rok i miesiąc, w którym najwięcej osób ukończyło szczepienie (czyli: w tym miesiącu przyjęło ostatnią rekomendowaną dawkę danego szczepienia). Podaj także liczbę osób, które ukończyły szczepienie w tym terminie.

Rok i miesiąc:

Liczba pacjentów:

Zadanie 6.4

Podaj, ilu pacjentów zostało zaszczepionych częściowo (czyli: przyjęło przynajmniej jedną dawkę szczepionki, ale nie przyjęło wszystkich rekomendowanych dawek).

Odpowiedź:

Zadanie 6.5

Wykonaj zestawienie, w którym dla każdego dnia tygodnia (poniedziałek – niedziela) policzysz, ile szczepień zostało wykonanych tego dnia. Zestawienie posortuj według dnia tygodnia.

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