Historyczny arkusz maturalny z informatyki rozszerzonej 2010. Pobierz PDF z zadaniami oraz klucz odpowiedzi CKE.
Historyczny arkusz maturalny z informatyki na poziomie rozszerzonym z sesji maj 2010 (stara formuła, sprzed reformy z 2015 roku). Egzamin składał się z dwóch części: Część I (90 minut, 20 punktów, zadania 1–3) rozwiązywana bez komputera oraz Część II (150 minut, 30 punktów, zadania 4–6) wykonywana przy komputerze z wykorzystaniem dołączonych danych. 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 arkuszach PDF.
Szyfrowanie przestawieniowe jest klasyczną metodą szyfrowania polegającą na zmianie kolejności liter w szyfrowanym tekście. Często używa się reguł zamiany opartych na różnych figurach geometrycznych – w tym zadaniu użyjemy kwadratu. Szyfrowanie będzie polegało na wprowadzeniu tekstu do kwadratowej tablicy szyfrującej o wymiarach n×n po kolei wierszami, a następnie odczytaniu tekstu z tablicy kolumnami od lewej do prawej. Wymiar n tablicy jest najmniejszą liczbą, przy której tekst zmieści się w całości w kwadracie n×n. W przypadku, gdy tekst jest krótszy i nie wypełnia wszystkich pól tablicy, puste pola uzupełnia się znakami odstępu. W tym zadaniu znaki odstępu będziemy oznaczać _.
Przykład:
Załóżmy, że tekst ALGORYTM_PRZESTAWIENIOWY ma być zaszyfrowany w tablicy kwadratowej. Liczba znaków w tekście do zaszyfrowania jest równa 24, czyli tablica szyfrująca ma wymiary 5×5. Ostatni element tablicy będzie uzupełniony znakiem odstępu. Tekst zapisujemy do tablicy wierszami.
| A | L | G | O | R |
|---|---|---|---|---|
| Y | T | M | _ | P |
| R | Z | E | S | T |
| A | W | I | E | N |
| I | O | W | Y | _ |
Następnie odczytujemy zaszyfrowany tekst kolumnami: AYRAILTZWOGMEIWO_SEYRPTN_
a) Podaj wzór na liczbę wierszy i kolumn tablicy kwadratowej używanej do szyfrowania tekstu o długości d znaków lub opisz algorytm wyznaczania tej liczby (w postaci listy kroków, schematu blokowego lub w wybranym języku programowania).
Kliknij Pokaż odpowiedź, aby zobaczyć rozwiązanie z klucza CKE.
d – liczba znaków w tekście; n – liczba wierszy/kolumn
n = ⌈√d⌉ lub najmniejsza liczba naturalna większa lub równa od √d
b) Do zaszyfrowania pewnego cytatu z Sokratesa użyto metody opisanej w podpunkcie a). Rozszyfruj ten cytat. Poniższy szyfr składa się z 64 znaków.
BTLLTU_ĘL_EOYPM_ĄPJZLCYNDREOKYLI_ZMFO_ĄGJY_Ó_N_DEWFWGISYSII_ŁEI_
Poniżej wpisz rozszyfrowany cytat i kliknij Sprawdź.
Odpowiedź:
c) Zapisz algorytm (w postaci listy kroków, schematu blokowego lub w wybranym języku programowania), który szyfruje zadany tekst sposobem opisanym w tym zadaniu i jest zgodny z poniższą specyfikacją.
d – dodatnia liczba całkowita, długość tekstu do zaszyfrowania
tekst[1…d] – tablica zawierająca tekst do zaszyfrowania, gdzie tekst[i], to i-ty znak w tekście do zaszyfrowania
Wynik:
s – dodatnia liczba całkowita, długość tekstu po zaszyfrowaniu
szyfr[1…s] – tablica zawierająca tekst po zaszyfrowaniu, gdzie szyfr[i], to i-ty znak w tekście po zaszyfrowaniuKliknij 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.
public class Main {
public char[] szyfruj(char[] tekst) {
//dlugosc tekstu
int d = tekst.length;
int n = (int) Math.ceil(Math.sqrt(d));
char[][] tab = new char[n][n];
int znak = 0;
for (int i = 0; i < tab.length; i++) {
//wiersz
char[] cs = tab[i];
for (int j = 0; j < cs.length; j++) {
//kolumna - indeks maksymalny jest d-1
if (znak >= d) {
cs[j] = ' ';
} else {
cs[j] = tekst[znak];
}
znak++;
}
}
int s = n*n;
char szyfr[] = new char[s];
znak = 0;
for (int i = 0; i < tab.length; i++) {
//wiersz
char[] cs = tab[i];
for (int j = 0; j < cs.length; j++) {
//kolumna
char c = tab[j][i];
szyfr[znak] = tab[j][i];
znak++;
}
}
return szyfr;
}
}W tablicy a[1…1023] zapisano ciąg zer i jedynek w taki sposób, że wszystkie zera poprzedzają jedynki.
Uwaga: W tablicy mogą być same zera lub same jedynki.
Oto niepełny algorytm obliczania liczby zer w tablicy a:
← – oznacza instrukcję przypisania
div – oznacza dzielenie całkowite
a) Uzupełnij opis algorytmu, wstawiając w miejsce kropek stosowne wyrażenie, tak aby obliczał on zawsze poprawnie liczbę zer z tablicy a.
liczba_zer ← 0 l ← 1, p ← 1023 dopóki l ≤ p wykonuj s ← (l + p) div 2 jeśli a[s] = 1 to p ← s − 1 w przeciwnym przypadku liczba_zer ← liczba_zer + l ←
b) Ile instrukcji przypisania s ← (l + p) div 2 jest wykonywanych w każdym przebiegu algorytmu? Odpowiedź uzasadnij.
Poniżej wpisz liczbę instrukcji przypisania i kliknij Sprawdź.
Liczba instrukcji przypisania:
Kliknij Pokaż odpowiedź, aby zobaczyć uzasadnienie z klucza CKE.
Liczba instrukcji przypisania: log₂1024 lub ⌈log₂1023⌉ lub 10
Uzasadnienie: w każdym kroku pętli zakres tablicy pozostały do sprawdzenia zmniejsza się o połowę
Podpunkty a) – e) zawierają po trzy stwierdzenia, z których każde jest albo prawdziwe, albo fałszywe. Zdecyduj, które z podanych stwierdzeń są prawdziwe (P), a które fałszywe (F).
a) Pojedyncza operacja wykonywana na stosie to
| Stwierdzenie | P / F |
|---|---|
| pobranie pierwszego od dołu elementu. | |
| usunięcie pierwszego od dołu elementu. | |
| pobranie pierwszego od góry elementu. |
b) Algorytm
znajduje
| Stwierdzenie | P / F |
|---|---|
| NWW (a,b). | |
| NWD (a,b). | |
| liczbę pierwszą większą od a i mniejszą od b. |
c) Liczba 1000₁₆ to
| Stwierdzenie | P / F |
|---|---|
| 34522₅ | |
| 4096₁₀ | |
| 10000₈ |
d) Program zapobiegający włamaniom do systemu i kontrolujący pakiety sieciowe to
| Stwierdzenie | P / F |
|---|---|
| firewall. | |
| keylogger. | |
| filtr antyspamowy. |
e) Format plików graficznych dla grafiki rastrowej to
| Stwierdzenie | P / F |
|---|---|
| BMP. | |
| JPG. | |
| GIF. |
Anagram to słowo powstałe z innego słowa przez przestawienie liter. Przez słowo rozumiemy w tym zadaniu dowolny ciąg liter alfabetu łacińskiego.
Przykłady anagramów:
dla słowa: barok – korba, robak, arobk, rokab, orkab …
dla słowa: ranty – tyran, narty, ntyra, natyr, ytnar …
W pliku tekstowym anagram.txt znajduje się 200 wierszy zawierających po 5 słów w każdym wierszu. Słowa oddzielone są znakiem odstępu. Długość każdego ze słów wynosi od 1 do 20 znaków.
Przykład:
abcd cdba dbac cbad dcba barbakan xle ala foto otof smok ayszkm lampa ayszkm bakara skok arabanta oko agnieba dyskietka ……
Napisz program w wybranym przez siebie języku programowania, za pomocą którego wykonasz poniższe polecenia. Odpowiedzi zapisz w plikach odp_4a.txt oraz odp_4b.txt.
a) Wyszukaj w pliku anagram.txt te wiersze, w których wszystkie słowa znajdujące się w danym wierszu mają taką samą liczbę znaków. Zapisz te wiersze w pliku odp_4a.txt.
Kliknij Pokaż odpowiedź, aby zobaczyć wzorcowe rozwiązanie z klucza CKE.
abcd cdba dbac cbad dcba wrona rossa slowo gwert rezas grant hello zakon lloeh hello kabaret kabanos kabaret gertyfu kabaret ola ala aga oal ola rezas rossa zaser sarez rezas foto foto tofo tofo foto romans romans normag masrom ansrom ekran ranek lampa zakon ekran korba orkan delpu pudel udelp czek azer reza zare rzea cebula romans romans mansro romans kruk kruk buka zuka nuka agent rossa serce cerse sdfrt qwerty wertyq wertyu magnor normag glob lobg bogl glbo gblo triada dariat aadrit iatdar adatri kotek tekok teokk kokte otekk obrus bruso soubo seawo rusob rower werro werro owerr erwor ipfon ipfon fonip ipfon zakop nerka drewn korba korba korba patyk wrona wrona wrona wrona foto tofo foot ftoo ootf spiker kerspi erspik erspki kiersp burza orkan lukde pudeh lerfy
b) Wyszukaj w pliku anagram.txt wszystkie wiersze tekstu, w których wszystkie słowa są anagramami pierwszego słowa w danym wierszu. Zapisz te wiersze w pliku odp_4b.txt.
Kliknij Pokaż odpowiedź, aby zobaczyć wzorcowe rozwiązanie z klucza CKE.
abcd cdba dbac cbad dcba foto foto tofo tofo foto glob lobg bogl glbo gblo triada dariat aadrit iatdar adatri kotek tekok teokk kokte otekk rower werro werro owerr erwor foto tofo foot ftoo ootf spiker kerspi erspik erspki kiersp
Numer PESEL to 11-cyfrowy kod, jednoznacznie identyfikujący określoną osobę fizyczną. Dla wszystkich urodzonych przed 1.1.2000 r. skonstruowany został w następujący sposób:
Przykład:
Numer PESEL 75121968629 oznacza kobietę (bo przedostatnia cyfra w numerze jest parzysta), urodzoną 19 grudnia 1975 roku, której nadano liczbę porządkową 686.
Cyfra kontrolna jest obliczana wg następującego algorytmu:
1. Każdą cyfrę numeru PESEL (oprócz ostatniej, która jest cyfrą kontrolną) mnożymy przez odpowiadającą jej wagę. Tablica wag ma postać: 1, 3, 7, 9, 1, 3, 7, 9, 1, 3. W podanym powyżej numerze PESEL cyfrą kontrolną jest 9.
PESEL: 7 5 1 2 1 9 6 8 6 2 9 (ostatnią cyfrę pomijamy, bo to cyfra kontrolna) WAGI: 1 3 7 9 1 3 7 9 1 3 WYNIKI: 7x1=7; 5x3=15; 1x7=7; 2x9=18 ;1x1=1; 9x3=27; 6x7=42; 8x9=72; 6x1=6; 2x3=6
2. Wyniki sumujemy: 7 + 15 + 7 + 18 + 1 + 27 + 42 + 72 + 6 + 6 = 201 3. Wyznaczamy resztę z dzielenia sumy przez 10: 201:10 = 20 reszta = 1 4. Jeżeli reszta = 0, to cyfra kontrolna wynosi 0. Jeżeli reszta ≠ 0, to cyfra kontrolna będzie uzupełnieniem reszty do 10, czyli w podanym przykładzie jest to cyfra 9.
Plik pesel.txt zawiera numery PESEL 150 osób zatrudnionych w biurze obliczeniowym „Statystyk". Korzystając z informacji zawartych w pliku pesel.txt oraz dostępnych narzędzi informatycznych, wykonaj poniższe polecenia. Odpowiedzi do poszczególnych podpunktów umieść w pliku odp_5.txt, poprzedzając je literą oznaczającą ten podpunkt.
Uwaga: Możesz przyjąć, że nawet gdy cyfra kontrolna numeru PESEL jest niepoprawna, to dane osobowe w nim zapisane, są prawidłowe.
a) Ile osób urodziło się w grudniu?
Poniżej wpisz odpowiedź i kliknij Sprawdź.
Odpowiedź:
b) Podaj, ile kobiet pracuje w biurze obliczeniowym.
Poniżej wpisz odpowiedź i kliknij Sprawdź.
Odpowiedź:
c) Podaj rok, w którym urodziło się najwięcej osób pracujących w biurze.
Poniżej wpisz odpowiedź i kliknij Sprawdź.
Odpowiedź:
d) Wyszukaj nieprawidłowe numery PESEL, w których nie zgadza się cyfra kontrolna. Posortuj te numery rosnąco.
Kliknij Pokaż odpowiedź, aby zobaczyć wzorcowe rozwiązanie z klucza CKE.
Lista numerów PESEL: 54043010088 60061144469 77072919805 77120835871 83041812338 89081421445 91032272651 92022716243
e) Sporządź zestawienie liczby osób urodzonych w kolejnych dziesięcioleciach, tzn. w latach pięćdziesiątych, sześćdziesiątych, siedemdziesiątych, osiemdziesiątych i dziewięćdziesiątych. Utwórz wykres ilustrujący procentowy rozkład liczby osób w poszczególnych przedziałach.
Uwaga: Do urodzonych w latach pięćdziesiątych należy zaliczyć osoby urodzone od roku 1950 do roku 1959 włącznie.
Kliknij Pokaż odpowiedź, aby zobaczyć wzorcowe rozwiązanie z klucza CKE.
Zestawienie i wykres:
| Dziesięciolecie | Liczba osób |
|---|---|
| 50-te | 22 |
| 60-te | 28 |
| 70-te | 36 |
| 80-te | 58 |
| 90-te | 6 |
Szkoła dysponuje danymi zawartymi w trzech plikach: uczniowie.txt, oceny.txt, przedmioty.txt.
uczniowie.txt zawiera następujące dane o uczniach: idUcznia, nazwisko, imie, ulica, dom, idKlasy.oceny.txt zawiera dane o ocenach: idUcznia, ocena, data, idPrzedmiotu.przedmioty.txt zawiera dane o przedmiotach: idPrzedmiotu, nazwaPrzedmiotu, nazwisko_naucz, imie_naucz.Korzystając z danych zawartych w plikach uczniowie.txt, oceny.txt, przedmioty.txt oraz z dostępnych narzędzi informatycznych wykonaj poniższe polecenia. Każdą odpowiedź umieść w pliku odp_6.txt, poprzedzając ją oznaczeniem odpowiedniego podpunktu od a) do f).
a) Poza rejonem szkoły leżą ulice Worcella oraz Sportowa. Podaj, ilu uczniów mieszka poza rejonem szkoły (czyli na jednej z tych dwóch ulic).
Poniżej wpisz odpowiedź i kliknij Sprawdź.
Odpowiedź:
b) Wypisz wszystkie oceny ucznia Jana Augustyniaka z języka polskiego.
Poniżej wpisz odpowiedź i kliknij Sprawdź.
Odpowiedź:
c) Oblicz, ile dziewcząt i ilu chłopców jest w poszczególnych klasach. Wynik przedstaw w postaci zestawienia: idKlasy, liczba dziewcząt, liczba chłopców. Załóż, że imiona dziewcząt (i tylko dziewcząt) kończą się na literę a.
Kliknij Pokaż odpowiedź, aby zobaczyć wzorcowe rozwiązanie z klucza CKE.
| IDklasy | Liczba dziewcząt | Liczba chłopców |
|---|---|---|
| 1a | 26 | 4 |
| 1b | 26 | 3 |
| 1c | 28 | 2 |
| 1d | 26 | 1 |
| 1e | 30 | 2 |
| 2a | 30 | 1 |
| 2b | 25 | 4 |
| 2c | 27 | 1 |
| 2d | 31 | 2 |
| 2e | 19 | 2 |
| 3a | 24 | 1 |
| 3b | 24 | 1 |
| 3c | 23 | 2 |
| 3d | 19 | 6 |
d) Utwórz zestawienie dla klasy 2a zawierające nazwy przedmiotów i średnie ocen klasy z tych przedmiotów (średnie podaj z zaokrągleniem do dwóch miejsc po przecinku) Zestawienie posortuj nierosnąco według średnich ocen.
Kliknij Pokaż odpowiedź, aby zobaczyć wzorcowe rozwiązanie z klucza CKE.
| Przedmiot | Średnia |
|---|---|
| geografia | 3,25 |
| wf | 3,14 |
| niemiecki | 3,12 |
| angielski | 3,11 |
| chemia | 3,03 |
| historia | 3,02 |
| wos | 3,01 |
| fizyka | 3,01 |
| polski | 2,95 |
| matematyka | 2,93 |
| informatyka | 2,72 |
e) Utwórz zestawienie uporządkowane alfabetycznie według nazwisk zawierające wykaz osób z klasy 2c, które w kwietniu 2009 roku otrzymały oceny niedostateczne (imię, nazwisko, przedmiot).
Kliknij Pokaż odpowiedź, aby zobaczyć wzorcowe rozwiązanie z klucza CKE.
| Imię i nazwisko | Przedmiot |
|---|---|
| Urszula Bednarczyk | wos |
| Krystyna Lysek | fizyka |
| Barbara Mikolajczyk | wos |
| Grazyna Witczak | angielski |
| Dorota Wojcik | wos |
| Beata Zabielana | niemiecki |
| Beata Zabielana | angielski |
f) Podaj nazwisko, imię, klasę oraz średnią ocen osoby, która osiągnęła najwyższą średnią ocen w całej szkole (jest tylko jedna taka osoba).
Poniżej wpisz odpowiedź i kliknij Sprawdź.
Nazwisko i imię:
Klasa:
Średnia ocen: