Wróć do: Arkusze maturalne
2018CZERWIEC

Matura z informatyki 2018 – czerwiec, poziom rozszerzony

Formuła 2015arkusz CKE · poziom rozszerzony

Arkusz maturalny z informatyki rozszerzonej z terminu dodatkowego (czerwiec 2018, 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 terminu dodatkowego – czerwiec 2018 (Formuła 2015, „nowa matura"). Egzamin składał się z dwóch części: Część I (60 minut, 15 punktów, zadania 1–3) oraz Część II (150 minut, 35 punktów, zadania 4–6). Sesja dodatkowa jest przeznaczona dla maturzystów, którzy z przyczyn losowych nie mogli przystąpić do egzaminu w terminie głównym (maj) – ma identyczne wymagania, a arkusze z niej to cenny materiał ćwiczeniowy. 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. Wyszukiwanie liczb

Funkcja F(T, x) przyjmuje jako argumenty tablicę T, w której znajdują się liczby całkowite uporządkowane niemalejąco, oraz liczbę całkowitą x, którą ma wyszukać w tablicy.

Specyfikacja
Dane: n – liczba elementów tablicy, n > 0 T[1..n]n-elementowa tablica zawierająca liczby całkowite uporządkowane niemalejąco x – liczba całkowita poszukiwana w tablicy T Wynik: prawda – jeśli liczba x występuje w tablicy T, fałsz – w przeciwnym razie
funkcja F(T,x)
      p  1
      k  n
      dopóki p <= k powtarzaj:
            s  (p+k) div 2
            jeśli T[s] = x to
                        wynikiem jest prawda
                        zakończ działanie funkcji
            w przeciwnym razie
                        jeśli T[s] < x to p  s+1
                        w przeciwnym razie  k  s-1
      wynikiem jest fałsz

Uwaga: zapis div oznacza dzielenie całkowite

Zadanie 1.1

Rozważmy tablicę T = [3; 5; 7; 8; 9; 13; 33; 37; 40; 43].

A. Podaj wynik funkcji F(T, x) dla liczby x=7.

Odpowiedź:

B. Podaj, ile razy nastąpi modyfikacja wartości zmiennej p, a ile razy zmiennej k podczas wykonywania pętli dopóki dla x = 7 oraz dla x = 43.

ZmiennaIle razy nastąpi modyfikacja wartości zmiennej?
x=7x=43
p
k

C. Podaj kolejne wartości zmiennej s, jakie będzie ona przyjmowała dla x = 7.

Odpowiedź:

Zadanie 1.2

Podaj, ile razy dla n = 100 jest spełniony warunek „p <= k" podczas wykonywania pętli dopóki w funkcji F(T, x), w sytuacji, gdy poszukiwana liczba jest większa od każdego z elementów zapisanych w tablicy T?

Poniżej wpisz odpowiedź i kliknij Sprawdź.

Odpowiedź:

Zadanie 1.3

Sprawdź działanie funkcji F(T, x) dla nieuporządkowanej tablicy

T = [3; 5; 7; 8; 90; 13; 33; 37; 40; 43].

Podaj wynik działania tej funkcji dla tablicy T oraz liczby x = 43.

Poniżej wpisz odpowiedź i kliknij Sprawdź.

Odpowiedź:

03

Zadanie 2. Liczby Fibonacciego

Liczby Fibonacciego są definiowane w następujący sposób:

F₁ = 1, F₂ = 1,

Fₙ = Fₙ₋₁ + Fₙ₋₂ dla n = 3, 4, …

Rekurencyjny algorytm, który służy do obliczania wartości Fₙ dla dowolnego n ≥ 1, można zapisać następująco:

funkcja F(n)
   jeśli n=1 lub n=2
         wynikiem jest 1
   w przeciwnym razie
         wynikiem jest F(n-1) + F(n-2)

Zadanie 2.1

Zapisz w wybranej przez siebie notacji (w języku programowania lub w pseudokodzie) algorytm iteracyjny, który służy do obliczania wartości liczby Fₙ dla dowolnego n ≥ 1. Algorytm nie może używać tablic.

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.

Zadanie 2.2

Aby obliczyć F₄₅, wywołano najpierw funkcję iteracyjną, a potem – rekurencyjną. Okazało się, że czas trwania obliczeń realizowanych przez funkcję rekurencyjną był długi, podczas gdy funkcja iteracyjna prawie natychmiast podała wynik. Uzasadnij długi czas działania funkcji rekurencyjnej.

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

Zadanie 2.3

Aby przyśpieszyć rekurencyjne obliczanie wartości n-tego wyrazu ciągu Fibonacciego, można skorzystać z następujących wzorów, prawdziwych dla dowolnego całkowitego k ≥ 2:

F₂ₖ = (Fₖ₊₁)² - (Fₖ₋₁)²

F₂ₖ₋₁ = (Fₖ)² + (Fₖ₋₁)²

Zapisz w wybranej przez siebie notacji (w postaci listy kroków, w języku programowania lub w pseudokodzie) algorytm rekurencyjny, który służy do obliczania wartości liczby Fₙ dla dowolnego n ≥ 1 i korzysta z tych wzorów.

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.

Uwaga: Dopuszczamy zastosowanie przez zdającego funkcji potęgowania wbudowanej w język programowania

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 T zapisano wiele rekordów danych zawierających informacje o zawodnikach. Pola rekordu to: id, nazwisko, imie, plec, wzrost, numer_startowy, punkty, id_klubu.

Polecenie SQL obliczające sumę punktów zawodników z klubu o id_klubu równym liczbie 100, może mieć postać:

NrZdanieP / F
1select sum(punkty) as suma from T where id_klubu=100;
2select avg(punkty) from T where id=100;
3select punkty as suma from T where id_klubu=100;
4select sum(punkty) from T where id_klubu=100;

Zadanie 3.2

Które zdania dotyczące struktury danych zwanej stosem są prawdziwe?

NrZdanieP / F
1Elementy stosu są zdejmowane w odwrotnej kolejności niż kolejność ich wkładania na stos.
2Tylko pierwszy dodany element jest zawsze dostępny na stosie.
3Stos może być używany m.in. przy obliczaniu wartości wyrażeń zapisanych w Odwrotnej Notacji Polskiej (ONP).
4Tylko ostatnio dodany element jest zawsze dostępny na stosie.

Zadanie 3.3

Do jednoznacznego zakodowania znaków pięcioelementowego alfabetu wystarcza/y:

NrZdanieP / F
12 bity.
23 bity.
35 bitów.
48 bitów.

Zadanie 3.4

Dana jest funkcja rekurencyjna Rek, której argumentem jest nieujemna liczba całkowita n.

funkcja Rek(n)
   jeśli (n>0) to wykonaj kolejno dwie instrukcje:
            1. wywołaj Rek dla argumentu n-1
            2. wypisz n

Jeśli wywołamy ją dla n równego 5, to:

NrZdanieP / F
1Zero będzie wypisane.
2Największą wypisaną liczbą będzie 5.
3Zostanie wypisanych 5 liczb.
4Liczby zostaną wypisane w kolejności malejącej.
05

Zadanie 4. Scalanie

Pliki dane1.txt i dane2.txt zawierają po 1000 wierszy. W każdym wierszu tych plików zapisany jest uporządkowany niemalejąco ciąg dziesięciu liczb całkowitych o wartościach z przedziału ⟨0,100) , oddzielonych spacjami.

Napisz program(y), dający(e) odpowiedzi do poniższych zadań. Odpowiedzi zapisz w plikach o nazwach zgodnych z podanymi poniżej.

Uwaga: pliki przyklad1.txt oraz przyklad2.txt zawierają dane przykładowe spełniające warunki zadania (dla tylko 5 wierszy w każdym pliku). Odpowiedzi dla danych z przykładowych plików są podane pod poleceniami.

Zadanie 4.1

Porównaj ciągi zapisane w odpowiadających sobie wierszach w plikach dane1.txt i dane2.txt. Podaj, w ilu wierszach zapisane są ciągi, których ostania liczba jest taka sama. Dla danych z plików przyklad1.txt oraz przyklad2.txt wynikiem jest 3.

Poniżej podaj odpowiedź dla pełnych plików dane1.txt i dane2.txt i kliknij Sprawdź.

Odpowiedź:

Zadanie 4.2

Podaj, ile jest par ciągów (w odpowiadających sobie wierszach plików dane1.txt i dane2.txt) takich, że w jednym i drugim ciągu jest 5 liczb parzystych i 5 liczb nieparzystych. Dla danych z plików przyklad1.txt oraz przyklad2.txt wynikiem jest 1.

Poniżej podaj odpowiedź dla pełnych plików dane1.txt i dane2.txt i kliknij Sprawdź.

Odpowiedź:

Zadanie 4.3

Policz, ile jest par ciągów (w odpowiadających sobie wierszach plików dane1.txt i dane2.txt), które utworzone są z takich samych liczb. Liczba powtórzeń takich samych liczb w ciągach może być różna. Wypisz numery wierszy, w których takie pary ciągów się znajdują.

Dla danych z plików przyklad1.txt oraz przyklad2.txt odpowiedzią jest:

2 pary ciągów

numery wierszy:

1, 5

Poniżej podaj odpowiedź dla pełnych plików dane1.txt i dane2.txt i kliknij Sprawdź.

Liczba par ciągów:

Numer wiersza:

Zadanie 4.4

W sortowaniu przez scalanie wykorzystuje się scalanie dwóch ciągów uporządkowanych niemalejąco. Polega ono na tym, że porównujemy pierwsze elementy ciągów i mniejszy lub równy z nich przepisujemy do trzeciego ciągu, a w ciągu, z którego on pochodzi, przechodzimy do kolejnego elementu. Następnie znów porównujemy wskazywane elementy w obydwu ciągach i przepisujemy do trzeciego ciągu mniejszy lub równy z nich. Kontynuujemy to działanie do czasu wyczerpania elementów jednego z ciągów. Resztę elementów z drugiego ciągu przepisujemy do ciągu trzeciego.

W poniższym przykładzie wyczerpano już elementy ciągu drugiego. Wystarczy więc przepisać kolejno elementy 16 i 45 pierwszego ciągu do ciągu trzeciego, by zakończyć scalanie.

Do scalenia będziemy zawsze brali parę ciągów z odpowiadających sobie wierszy w plikach.

Napisz program, który utworzy plik wynik4_4.txt zawierający w kolejnych wierszach ciągi uporządkowane, będące wynikiem scalenia odpowiadających im co do kolejności ciągów z plików dane1.txt i dane2.txt. Liczby w ciągach wynikowych zapisz, rozdzielając je spacjami.

Dla danych z plików przyklad1.txt oraz przyklad2.txt wynikiem jest plik zawierający następujące wiersze:

3 3 9 9 12 12 12 14 14 19 19 26 26 32 32 33 33 33 36 36
2 6 8 9 15 16 16 17 17 18 24 27 29 35 35 36 41 41 46 54
3 9 12 12 16 21 23 25 27 29 31 33 33 38 38 46 48 48 50 54
5 8 13 15 22 22 27 31 36 39 45 46 49 52 55 56 57 64 70 70
1 1 2 2 8 8 8 9 9 10 10 18 18 22 22 22 32 32 34 34

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

06

Zadanie 5. Pomiary temperatury

W różnych miejscach laboratorium rozmieszczono 10 czujników temperatury. W wybranych dniach i godzinach wszystkie czujniki odczytają i rejestrują temperaturę w stopniach Celsjusza z dokładnością do setnej części. Wyniki odczytów zapisano w dwustu wierszach pliku pomiary.txt.

W każdym wierszu pliku pomiary.txt zapisanych jest dwanaście danych oddzielonych średnikami. Pierwszy wiersz pliku jest wierszem nagłówkowym.

Przykład:

data;godzina;czujnik1;czujnik2;czujnik3;czujnik4;czujnik5;czujnik6;czujnik7;czujnik8;czujnik9;czujnik10
2016-01-05;11:11;0,61;-4,98;-5,59;-2,80;3,39;2,81;-1,60;1,71;4,53
2016-01-08;07:00;-4,50;2,56;-5,28;-6,02;-5,78;-7,56;-2,48;3,31;-5,40;0,03
2016-01-18;10:12;2,59;-7,29;1,55;6,79;3,87;-7,74;4,52;-4,77;-3,88;-4,25

Pierwsza dana w każdym wierszu oznacza datę pomiaru (data), druga oznacza godzinę pomiaru (godzina). Kolejne liczby w wierszu zawierają informacje o zarejestrowanej temperaturze przez poszczególne czujniki, np.: pierwszy czujnik zarejestrował temperaturę 0,61ºC, drugi czujnik zarejestrował temperaturę -4,98ºC, itd.

Wykorzystując dane z pliku pomiary.txt oraz dostępne narzędzia informatyczne, wykonaj poniższe zadania. Odpowiedzi zapisz w pliku o nazwie wyniki5.txt, a każdą odpowiedź poprzedź numerem odpowiedniego zadania.

Zadanie 5.1

Oblicz, jaka jest średnia roczna temperatura zmierzona przez czujnik numer 5 w godzinach od 5:00 do 12:00 włącznie. Wynik podaj zaokrąglony do dwóch miejsc po przecinku.

Poniżej podaj odpowiedź i kliknij Sprawdź.

Odpowiedź:

Zadanie 5.2

Temperatura wyrażana w skali bezwzględnej (skali Kelvina) w powiązaniu ze skalą Celsjusza opisywana jest wzorem: T[K]=273,15+T[ºC].

Wynik każdego pomiaru temperatury przedstaw w skali Kelvina zaokrąglony w dół do liczby całkowitej. Dla każdego czujnika podaj, które z otrzymanych zaokrąglonych wartości w skali Kelvina występują najczęściej.

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

Zadanie 5.3

Podaj średnie wartości temperatury (w stopniach Celsjusza), zaokrąglone do dwóch miejsc po przecinku, odczytane przez czujnik nr 10 w poszczególnych miesiącach roku 2016. Przedstaw otrzymane wartości temperatury na wykresie słupkowym. Umieść na wykresie etykiety danych, opisy osi oraz tytuł wykresu.

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

Zadanie 5.4

Podaj, w którym z przedziałów temperatur: (-10,15⟩, (15, 20⟩ wyrażonych w stopniach Celsjusza, mieści się większa liczba pomiarów, oraz podaj tę liczbę.

Poniżej podaj odpowiedź i kliknij Sprawdź.

Zakres:

Liczba pomiarów:

Zadanie 5.5

W wyniku awarii w laboratorium utracono wszystkie wyniki pomiarów z 2017 roku. Na podstawie zachowanych analiz stwierdzono, że w tych samych dniach miesiąca i o tych samych godzinach co w roku 2016 wyniki odczytów w 2017 roku zmieniły się następująco:

a) Wniosek I – w dniach od 5 do 10 każdego miesiąca odczyty czujnika1, czujnika2 i czujnika9 były niższe od tych w roku 2016 o 1,2°C.

b) Wniosek II – wszystkie odczytywane przez czujnik8 wartości w lipcu i sierpniu wzrosły o 7% w stosunku do odczytów z 2016 r. (w zaokrągleniu w dół do 2 miejsc po przecinku).

c) Wniosek III – w maju odczyty wszystkich czujników były dodatkowo wyższe o 0,9°C.

Odtwórz zestawienie temperatur czujnika1, czujnika2, czujnika8 i czujnika9 w roku 2017 w dniach i godzinach takich samych jak w roku 2016. Dla wymienionych czujników podaj pierwsze pomiary temperatury w °C z dni: 5-05-2017 oraz 7-07-2017 po zastosowaniu wniosku I i wniosku II oraz osobno po zastosowaniu wszystkich trzech wniosków.

Uwaga: wykonując zestawienie temperatur w roku 2017, przyjmij, że jeśli nie ma zastosowania żaden z wniosków I, II lub III, wartości temperatury są takie same jak w roku 2016.

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

07

Zadanie 6. Wypożyczalnia samochodów

Wypożyczalnia samochodów WYPSA ma przedstawicielstwa w kilku miejscowościach. W każdej z nich można wypożyczyć samochód określonej klasy B lub C lub D (od klasy zależy wielkość samochodu, stopień luksusu i cena za wypożyczenie).

Plik samochody.txt zawiera informacje o samochodach: Nr_ew – numer ewidencyjny samochodu; Nr_firmowy – składający się z litery określającej klasę samochodu oraz pewnego numeru; Miejscowosc – miejscowość, z której pochodzi samochód; Nr_rej – numer rejestracyjny samochodu zaczynający się dwiema pierwszymi literami nazwy miejscowości.

Przykład:

Nr_ew;Nr_firmowy;Miejscowosc;Nr_rej
1266;B10;Wielka Wola;WI1344
1267;B100;Wielka Wola;WI1254
1268;B105;Wielka Wola;WI1249

Plik ceny_za_dobe.txt zawiera informacje o cenach za wypożyczenie samochodu poszczególnych klas: Klasa – klasa samochodu (litera B, C, lub D); Cena – cena za dobę wypożyczenia samochodu.

Przykład:

Klasa;Cena
B;80
C;140

Plik klienci.txt zawiera informacje o klientach: Nr_klienta – numer klienta; Imie – imię klienta; Nazwisko – nazwisko klienta. Nr_klienta jednoznacznie identyfikuje klienta. Nazwiska i imiona mogą się powtarzać. Nie ma dwóch osób o takim samym imieniu i nazwisku.

Przykład:

Nr_klienta;Imie;Nazwisko
123261;Nela;Aabacka
123156;Cyrenia;Abbacka
123252;Marcislaw;Abbacki

Plik wypozyczenia.txt zawiera informacje o wypożyczeniach: Nr_ew – numer ewidencyjny samochodu; Nr_klienta – numer klienta; Wypozyczenie – data wypożyczenia; Zwrot – data zwrotu. Informacje dotyczące wypożyczeń obejmują pierwsze półrocze 2015 roku.

Przykład:

Nr_ew;Nr_klienta;Wypozyczenie;Zwrot
1003;123184;2015-05-24;2015-06-08
1005;123107;2015-05-29;2015-06-23
1007;123123;2015-01-28;2015-02-13

Dane w wierszach każdego z plików oddzielone są średnikiem. Pierwszy wiersz każdego pliku jest wierszem nagłówkowym.

Uwaga: przy imporcie dat zwróć uwagę na prawidłowe ustawienie formatu daty RRRR-MM-DD.

Wykorzystując dane z plików oraz dostępne narzędzia informatyczne, wykonaj poniższe zadania. Odpowiedzi zapisz w pliku wyniki6.txt, a każdą z nich poprzedź numerem odpowiedniego zadania.

Zadanie 6.1

Utwórz zestawienie zawierające następujące informacje: imię, nazwisko, nr rejestracyjny samochodu, czas wypożyczenia (różnica między datą wypożyczenia i datą zwrotu – liczba dób), należność za wypożyczenie. Wiersze posortuj rosnąco według nazwiska klienta, a następnie – według imienia klienta i numeru rejestracyjnego samochodu. Podaj pierwszy i ostatni wiersz z uzyskanej tabeli.

Uwaga: dla daty wypożyczenia 2015-05-24 i daty zwrotu 2015-05-28 czas wypożyczenia to 4 doby.

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

Zadanie 6.2

Dla każdej klasy samochodu podaj liczbę wypożyczeń samochodów tej klasy.

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

Zadanie 6.3

Podaj imię i nazwisko osoby(osób), która(e) wypożyczała(y) samochody największą liczbę razy, oraz liczbę tych wypożyczeń.

Poniżej podaj odpowiedź i kliknij Sprawdź.

Imię i nazwisko:

Liczba wypożyczeń:

Zadanie 6.4

Przygotuj zestawienie samochodów, które nie były wypożyczane. Podaj ich liczbę w podziale na klasy i miejscowości.

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

Zadanie 6.5

Podaj liczbę zarejestrowanych klientów, którzy nie wypożyczyli żadnego samochodu.

Poniżej podaj odpowiedź i kliknij Sprawdź.

Odpowiedź: