Wróć do: Arkusze podstawowe
2012MAJ

Matura z informatyki 2012 – maj, poziom podstawowy

stara formułaarkusz CKE · poziom podstawowy

Arkusz maturalny z informatyki na poziomie podstawowym, maj 2012 (stara formuła). 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 podstawowym z sesji maj 2012 (stara formuła). Egzamin składał się z dwóch części: Część I (75 minut, 20 punktów, zadania 1–3) oraz Część II (120 minut, 30 punktów, zadania 4–6). Poziom podstawowy z informatyki był dostępny do 2020 roku włącznie – od 2021 roku informatyka jest egzaminem wyłącznie rozszerzonym. 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ść, wybór odpowiedzi) wpisz swój wynik lub zaznacz opcję i kliknij Sprawdź. W zadaniach otwartych (napisz algorytm, program, sporządź wykres) kliknij Pokaż odpowiedź, aby zobaczyć wzorcowe rozwiązanie z klucza CKE. Pełną treść zadań znajdziesz też w arkuszach PDF.

02

Zadanie 1. Fibonacci

Poniższa funkcja rekurencyjna Fib oblicza k-ty wyraz ciągu Fibonacciego.

Dane: k – liczba naturalna większa od zera

Funkcja Fib(k)

1. Jeżeli k = 1 lub k = 2, to wynikiem jest 1. 2. Jeżeli k > 2, to wynikiem jest Fib(k-1) + Fib(k-2).

Przykład:

Zgodnie z powyższą definicją funkcji Fib mamy:

Fib(4) =       Fib(3)       + Fib(2) =
       = [Fib(2) + Fib(1)] + Fib(2) =
       = [   1    +    1  ] +    1    = 3

Zadanie 1.1

a) Uzupełnij tabelę, wpisując dla podanych argumentów k wartości obliczane przez funkcję Fib.

kFib(k)
11
21
32
......
8
......
11

Zadanie 1.2

b) Wywołanie funkcji Fib(k) dla k > 2 powoduje dwa kolejne wywołania tej funkcji z mniejszymi argumentami, które z kolei mogą wymagać kolejnych wywołań Fib, itd. Proces ten można zilustrować za pomocą tzw. drzewa wywołań rekurencyjnych. Poniżej prezentujemy drzewo wywołań rekurencyjnych dla k = 5. W węzłach drzewa znajdują się argumenty wywołań.

Narysuj drzewo wywołań rekurencyjnych dla Fib(6).

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

Zadanie 1.3

c) k-ty wyraz ciągu Fibonacciego można wyznaczyć iteracyjnie w następujący sposób:

Dane: k – liczba naturalna większa od zera

Algorytm:

1. Fi  1, Fi_1  1, i  2
2. dopóki i < k
       pom  Fi
       Fi  Fi + Fi_1
       Fi_1  pom
       i  i + 1
3. wypisz Fi

Zdefiniujmy następujący ciąg:

  • Pierwszy i drugi wyraz ciągu są równe 1.
  • Jeśli k > 2 i k jest parzyste, to k-ty wyraz jest sumą trzech wyrazów go poprzedzających.
  • Jeśli k > 2 i k jest nieparzyste, to k-ty wyraz jest równy wyrazowi o numerze (k-1).

Kilka pierwszych wyrazów tego ciągu podano w poniższej tabeli.

k12345678
k-ty wyraz111337717

Zapisz algorytm (w postaci listy kroków, schematu blokowego lub w wybranym języku programowania), który dla danej wartości k wyznacza k-ty wyraz opisanego powyżej ciągu. Zapisz rozwiązanie w postaci iteracyjnej.

Specyfikacja
Dane: k – liczba naturalna większa od zera Wynik: k-ty wyraz ciągu zdefiniowanego powyżej

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. Diamenty

W sejfie jubilera znajduje się n diamentów wycenionych odpowiednio na d₁, ..., dₙ złotych, przy czym żadne dwa diamenty nie są w tej samej cenie. Jubiler nie ujawnia cen diamentów, co oznacza, że tylko on zna ceny d₁, ..., dₙ.

Dla zainteresowanych klientów jubiler wykonuje operację porównania cen diamentów: dla wskazanych numerów i oraz j podaje, czy diament o numerze i ma wyższą cenę, niż diament o numerze j.

Przyjmijmy następujący sposób oznaczania wyniku operacji porównania cen:

większe(i, j) = prawda, gdy dᵢ > dⱼ

większe(i, j) = fałsz, gdy dᵢ < dⱼ

Zadanie 2.1

a) Poniżej prezentujemy pewien algorytm korzystający z operacji porównania cen:

1. j  0
2. i  1
3. dopóki i < n
       jeżeli większe(i, i+1) to j  j + 1
       i  i + 1
4. wypisz j

Uzupełnij poniższą tabelę, podając wyniki działania powyższego algorytmu po jego wykonaniu dla wskazanych danych.

nd₁, ..., dₙWynik algorytmu
45 2 1 62
42 5 1 2
41 2 3 4
44 3 2 1

Zadanie 2.2

b) Zapisz algorytm (w postaci listy kroków, schematu blokowego lub w wybranym języku programowania), który dla podanego ciągu cen diamentów znajduje numer diamentu o najwyższej cenie. W algorytmie zastosuj operację większe porównania cen dwóch diamentów.

Specyfikacja
Dane: n – liczba naturalna większa od zera oznaczająca liczbę diamentów d₁, ..., dₙ – ceny diamentów o kolejnych numerach 1, 2, ..., n; ceny dwóch różnych diamentów są różne Wynik: i – numer diamentu o najwyższej cenie

Podaj, ile operacji porównania cen diamentów wykonuje Twój algorytm dla n = 1000.

Liczba operacji porównania dla n = 1000:

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

W podpunktach a) – e) zaznacz poprawne odpowiedzi.

Uwaga: W każdym podpunkcie poprawna jest tylko jedna odpowiedź.

Adres IP to 32-bitowa liczba zapisywana jako cztery binarne liczby ośmiobitowe oddzielone odstępami, bądź jako cztery liczby dziesiętne oddzielone kropkami. Na przykład:

10000000 00000001 00000010 11111110
              128.1.2.254

to dwa różne zapisy tego samego adresu.

Poniżej podajemy dwie niepełne wersje tego samego adresu IP:

??????? 10101000 0000001 00000010
             192.???.1.2

gdzie znaki zapytania oznaczają brakujące cyfry.

Zadanie 3.1

a) Która z poniższych liczb jest równa brakującej części powyższego adresu IP w postaci binarnej?

Zadanie 3.2

b) Która z poniższych liczb jest równa brakującej części powyższego adresu IP w postaci dziesiętnej?

Zadanie 3.3

c) Największa liczba dziesiętna, jaką można zapisać na 32 bitach jest

Zadanie 3.4

d) Programowanie strukturalne to termin oznaczający

Zadanie 3.5

e) Aby uniemożliwić odczytanie przez niepowołane osoby pliku przesyłanego pocztą elektroniczną, stosuje się narzędzia służące do

05

Zadanie 4. Cyfry

W kolejnych wierszach pliku cyfry.txt znajduje się 1000 liczb naturalnych, mniejszych niż 10⁹ (jeden miliard), po jednej liczbie w każdym wierszu.

Napisz program, który da odpowiedzi do poniższych podpunktów. Każdą odpowiedź zapisz w pliku zadanie4.txt, poprzedzając ją oznaczeniem odpowiedniego podpunktu.

Zadanie 4.1

a) Ile liczb parzystych jest w pliku cyfry.txt?

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

Odpowiedź:

Zadanie 4.2

b) Podaj liczbę z pliku cyfry.txt, której suma cyfr jest największa oraz liczbę z tego pliku, której suma cyfr jest najmniejsza. W obu przypadkach jest tylko jedna taka liczba.

Przykład:

Dla danego zbioru liczb:

121324
66562
675100
1187010

odpowiedzią są liczby: 66562 oraz 121324, ponieważ suma cyfr liczby 66562 jest równa 25 (6+6+5+6+2) i jest największą taką sumą, zaś suma cyfr liczby 121324 (1+2+1+3+2+4) jest równa 13 i jest najmniejszą taką sumą.

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

Liczba o największej sumie cyfr:

Liczba o najmniejszej sumie cyfr:

Zadanie 4.3

c) Wypisz wszystkie liczby z pliku cyfry.txt, których cyfry tworzą ciąg rosnący.

Przykład:

Cyfry liczby 123579 tworzą ciąg rosnący, ponieważ 1<2<3<5<7<9.

Cyfry liczby 1232 nie tworzą ciągu rosnącego, ponieważ ostatnia cyfra (2) nie jest większa od przedostatniej (3).

Cyfry liczby 34556 nie tworzą ciągu rosnącego, ponieważ cyfra trzecia (5) i cyfra czwarta (5) są sobie równe.

Poniżej wypisz wszystkie takie liczby dla pełnego pliku cyfry.txt – każdą w osobnym wierszu – i kliknij Sprawdź.

06

Zadanie 5. Giełda

Plik gielda.txt składa się z 400 wierszy, w każdym wierszu znajdują się trzy liczby całkowite oddzielone odstępami, oznaczające zmiany cen akcji firm A, B i C na giełdzie papierów wartościowych w kolejnych 400 dniach. Cena jednej akcji każdej z firm przed pierwszym dniem opisanym w pliku gielda.txt była równa 200 zł.

Przykład:

Jeśli trzy pierwsze wiersze pliku gielda.txt są równe:

0 12 -7
1 -3 4
5 2 1

to ceny akcji firm A, B i C w trzech kolejnych dniach są równe:

KiedyCena ACena BCena C
1. dzień200 + 0 = 200200 + 12 = 212200 – 7 = 193
2. dzień200 + 1 = 201212 – 3 = 209193 + 4 = 197
3. dzień201 + 5 = 206209 + 2 = 211197 + 1 = 198

Korzystając z danych zawartych w pliku gielda.txt oraz dostępnych narzędzi informatycznych wykonaj poniższe polecenia. Każdą odpowiedź, z wyjątkiem wykresu w podpunkcie c), zapisz w pliku zadanie5.txt, poprzedzając ją oznaczeniem odpowiedniego podpunktu.

Zadanie 5.1

a) Wyznacz końcową (po 400 dniach) cenę jednej akcji każdej z firm A, B i C.

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

Cena A:

Cena B:

Cena C:

Zadanie 5.2

b) Podaj najwyższą i najniższą cenę akcji każdej z firm w czasie tych 400 dni.

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

ABC
max
min

Zadanie 5.3

c) Sporządź wykres liniowy ilustrujący ceny akcji wszystkich trzech firm w kolejnych 400 dniach. Oś X Twojego wykresu powinna być osią czasu, a oś Y odpowiadać wartościom akcji. Zadbaj o czytelny opis wykresu.

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

Zadanie 5.4

d) Krachem giełdowym będziemy nazywać taki dzień, w którym spadła cena akcji każdej z firm, a jednocześnie suma spadków cen jest większa niż 20 zł. Podaj liczbę krachów giełdowych oraz ceny akcji wszystkich firm w momencie ostatniego krachu.

Przykład:

Poniżej prezentujemy przykładowe ceny w dwóch kolejnych dniach.

Cena ACena BCena C
233166164
230150160

Drugiego dnia wystąpił krach, ponieważ spadła cena akcji wszystkich firm, a suma spadków cen jest równa 3 + 16 + 4 > 20.

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

Liczba krachów:

Cena A w momencie ostatniego krachu:

Cena B w momencie ostatniego krachu:

Cena C w momencie ostatniego krachu:

Zadanie 5.5

e) Rekordem firmy nazywamy cenę akcji w dniu, w którym jest ona wyższa od wszystkich wcześniejszych cen akcji tej firmy. Podaj, ile razy w 400 dniach opisanych w pliku gielda.txt zmieniał się rekord firmy A.

Uwaga: Zakładamy, że przed pierwszym dniem rekord był równy 200 zł.

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

Liczba zmian rekordu firmy A:

07

Zadanie 6. Rekrutacja

W plikach kandydaci.txt i zgloszenia.txt znajdują się informacje o naborze na studia w pewnej uczelni wyższej. Pierwszy wiersz każdego z plików jest wierszem nagłówkowym (nie ma w nim właściwych danych). Dane w poszczególnych wierszach rozdzielone są pojedynczymi znakami odstępu.

Jeden wiersz pliku kandydaci.txt zawiera następujące informacje o jednej osobie, oddzielone odstępami: identyfikator osoby (idosoby), imię, nazwisko, matematyka, informatyka, fizyka, jezykobcy, płeć. Pola matematyka, informatyka, fizyka, jezykobcy zawierają liczby punktów (nieujemne liczby całkowite), uzyskanych na egzaminie maturalnym na poziomie rozszerzonym (odpowiednio) z tych przedmiotów. Wartość pola płeć to k (kobieta) lub m (mężczyzna).

Przykład:

k007 Jan Kowalski 70 55 60 55 m
k001 Anna Nowak 88 56 49 66 k

Jeden wiersz pliku zgloszenia.txt zawiera informację o zgłoszeniu jednej osoby na jeden kierunek studiów. W wierszu znajdują się następujące informacje: kierunek studiów (kierunek), identyfikator kandydata (idosoby).

Przykład:

polonistyka k007
informatyka k001
matematyka k007

Liczbą punktów rekrutacyjnych kandydata na studia nazywać będziemy sumę punktów uzyskanych z matematyki, informatyki, fizyki i języka obcego.

Wykorzystując dane zawarte w tych plikach oraz dostępne narzędzia informatyczne, wykonaj poniższe polecenia. Odpowiedzi do poszczególnych podpunktów zapisz w pliku zadanie6.txt, a każdą z nich poprzedź literą oznaczającą ten podpunkt.

Zadanie 6.1

a) Podaj osoby, które uzyskały 400 punktów rekrutacyjnych. Wynik przedstaw w postaci listy zawierającej imiona i nazwiska, uporządkowanej alfabetycznie według nazwisk.

Poniżej wpisz odpowiedź – po jednej osobie (imię i nazwisko) w wierszu – i kliknij Sprawdź.

Zadanie 6.2

b) Utwórz zestawienie, w którym podasz, ilu kandydatów zgłosiło się na informatykę, ilu na matematykę, a ilu na fizykę.

Poniżej wpisz odpowiedź i kliknij Sprawdź.

KierunekLiczba kandydatów
informatyka
matematyka
fizyka

Zadanie 6.3

c) Podaj imiona i nazwiska wszystkich tych osób, które zgłosiły się jako kandydaci dokładnie na pięć kierunków studiów.

Poniżej wpisz odpowiedź – po jednej osobie (imię i nazwisko) w wierszu – i kliknij Sprawdź.

Zadanie 6.4

d) Podaj liczbę kobiet oraz liczbę mężczyzn, którzy zgłosili się jako kandydaci na informatykę.

Poniżej wpisz odpowiedź i kliknij Sprawdź.

Liczba kobiet:

Liczba mężczyzn:

Zadanie 6.5

e) Oblicz średnią liczbę punktów z matematyki, uzyskanych przez kandydatów, którzy zgłosili się na fizykę. Wynik zaokrąglij do dwóch miejsc po przecinku.

Poniżej wpisz odpowiedź i kliknij Sprawdź.

Średnia liczba punktów z matematyki: