Arkusz diagnostyczny (próbny) z informatyki rozszerzonej, grudzień 2022 – przed maturą 2023 (Formuła 2023). Rozwiąż zamknięte części zadań online, pobierz PDF, dane do zadań i klucz CKE.
Arkusz diagnostyczny (próbny) z informatyki na poziomie rozszerzonym z sesji grudzień 2022 (Formuła 2023, test diagnostyczny CKE). 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.
Dawno temu, w odległej galaktyce, rozegrano mecz w grę, która przypominała siatkówkę. W meczu wystąpiły dwie drużyny: drużyna A i drużyna B. Mecz składał się z 10 000 krótkich rozgrywek. Każda rozgrywka kończyła się wygraną jednej z dwóch drużyn, za którą zwycięska drużyna otrzymywała jeden punkt.
Plik mecz.txt zawiera zapis wyników kolejnych rozgrywek – jeden wiersz z napisem złożonym z 10 000 znaków A i B. Znak A oznacza, że rozgrywkę wygrała drużyna A, natomiast znak B – że rozgrywkę wygrała drużyna B.
Napisz program(-y) który(-e) znajdzie(-dą) odpowiedzi do poniższych zadań. Odpowiedzi zapisz w pliku wyniki1.txt, a każdą z nich poprzedź numerem odpowiedniego zadania.
Do dyspozycji masz plik mecz_przyklad.txt, spełniający warunki zadania – odpowiedzi dla tego pliku podano w treściach zadań. Możesz sprawdzać na nim działanie swojego programu.
Plik z danymi: mecz.txt
Oblicz, ile razy nastąpiła sytuacja, w której rozgrywkę wygrała inna drużyna niż rozgrywkę poprzednią (tzn. dwa kolejne znaki A lub B w opisie meczu się różnią).
Przykład: Dla napisu ABBBABA odpowiedzią jest 4. Natomiast dla pliku mecz_przyklad.txt odpowiedzią jest 1798
Poniżej wpisz odpowiedź dla pliku mecz.txt i kliknij Sprawdź.
Odpowiedź dla pliku mecz.txt:
Pierwszy set w meczu trwa do pierwszej rozgrywki, po której któraś z drużyn ma co najmniej 1000 punktów za wygranie dotychczasowych rozgrywek, natomiast druga drużyna ma co najmniej 3 punkty mniej. Drużyna, która zdobywa w secie więcej punktów od przeciwnej, wygrywa pierwszego seta.
Przykład: pierwszy set może się zakończyć wynikami: 1000:500, 997:1000, 1500:1497. Wyniki 900:100, 999:1000, 1500:1500 nie kończą seta.
Podaj, która drużyna wygrała pierwszego seta i jaki w tym momencie był wynik (liczba zwycięskich rozgrywek drużyny A i liczba zwycięskich rozgrywek drużyny B w pierwszym secie).
Dla pliku mecz_przyklad.txt odpowiedzią jest: A 1000:5
Poniżej wpisz odpowiedź dla pliku mecz.txt (drużyna i wynik) i kliknij Sprawdź.
Odpowiedź dla pliku mecz.txt:
Powiemy, że drużyna ma dobrą passę, jeśli wygrywa rozgrywki co najmniej 10 razy z rzędu. Każda dobra passa rozpoczyna się albo na początku meczu, albo bezpośrednio po przegranej rozgrywce. Każda dobra passa kończy się albo z końcem meczu, albo bezpośrednio przed przegraną rozgrywką.
Podaj łączną liczbę dobrych pass, które miały obie drużyny w meczu. Wyznacz długość najdłuższej dobrej passy i drużynę, która ją osiągnęła. Tylko jedna drużyna miała dobrą passę o tej długości.
Przykład: w meczu BBBBBBBBBBBAABBAAAAAAAAAAAABA mamy łącznie 2 dobre passy. Najdłuższą dobrą passę, o długości 11, osiągnęła drużyna A.
Dla pliku mecz_przyklad.txt odpowiedzią jest: 2 A 1000 (dwie dobre passy, najdłuższa drużyny A o długości 1000).
Poniżej wpisz odpowiedź dla pliku mecz.txt (liczba dobrych pass, drużyna z najdłuższą passą, jej długość) i kliknij Sprawdź.
Odpowiedź dla pliku mecz.txt:
Dla danej, dodatniej liczby całkowitej N, na kartce papieru rysujemy N różnych punktów i numerujemy je liczbami 1, 2, ..., N. W tym zadaniu będziemy łączyć punkty ze sobą strzałkami – funkcja strzałka(x,y) rysuje strzałkę od punktu o numerze x do punktu o numerze y.
Wywołanie poniżej zapisanej funkcji rekurencyjnej rysuj(x) poskutkuje narysowaniem pewnej liczby strzałek. Jej jedynym argumentem jest pewna liczba całkowita x z przedziału [1, N]. Przeanalizuj funkcję i znajdź odpowiedzi dla podanych zadań.
funkcja rysuj(x) jeżeli 2*x ≤ N strzałka(x, 2*x) rysuj(2*x) jeżeli 2*x + 1 ≤ N strzałka(x, 2*x + 1) rysuj(2*x + 1)
Przykład:
Oto przykładowy rysunek otrzymany w wyniku wywołania rysuj(1) dla N = 5 i danego układu punktów:
Dla N = 10 narysuj 10 punktów i ponumeruj je liczbami 1, 2, 3, ..., 10, a następnie połącz strzałkami tak, żeby otrzymać rysunek, który dostalibyśmy w wyniku wywołania funkcji rysuj(1). Dobierz punkty tak, aby Twój rysunek był czytelny.
Kliknij Pokaż odpowiedź, aby zobaczyć przykładowe poprawne rozwiązanie z klucza CKE.
Uwaga: to zadanie otwarte – odpowiedź z klucza CKE jest jedynie przykładowa; istnieją również inne poprawne rozwiązania.
Podaj, ile strzałek zostanie łącznie narysowanych wyniku wywołania rysuj(1):
Poniżej wpisz odpowiedzi i kliknij Sprawdź.
a) dla N = 20:
b) dla dowolnego N:
Niech N = 2047. Napisz, po ilu narysowanych strzałkach trzeba przejść, żeby dotrzeć z punktu o numerze 1 do punktu o numerze N, jeżeli będziemy się przemieszczać zgodnie z ich zwrotami.
Przykład:
Dla N = 5, żeby przemieścić się z punktu o numerze 1 do punktu o numerze 5 należy przejść po dwóch strzałkach.
Poniżej wpisz odpowiedź i kliknij Sprawdź.
Odpowiedź:
W pliku pary.txt danych jest 1000 par liczb całkowitych z przedziału [1, 100 000], po jednej parze w wierszu. Liczby w każdym wierszu są rozdzielone znakiem odstępu. Druga liczba w parze zawsze jest większa od pierwszej.
Dla N = 100 000 wykonano polecenie rysuj(1) dla pewnego układu N punktów.
Napisz program, który znajdzie i wypisze te pary liczb z pliku pary.txt, które odpowiadają numerom punktów x i y takich, że z punktu o numerze x można przejść po jednej lub wielu strzałkach (zawsze zgodnie z ich zwrotami) do punktu o numerze y.
Przykład:
Przykładowo: dla N = 5 po strzałkach można przejść z punktu o numerze 1 do punktu o numerze 4, ale nie można przejść z punktu o numerze 3 do punktu o numerze 5.
Kliknij Pokaż odpowiedź, aby zobaczyć odpowiedź z klucza CKE.
47 3044 7650 61204 1 245 7 63669 9125 18250 5 43246
Informacja do zadań 3.2.–3.4.
W pliku liczby.txt zapisanych jest 100 liczb parzystych z przedziału [4, 1 000 000], każda w oddzielnym wierszu.
Napisz program(-y) który(-e) znajdzie(-dą) odpowiedzi do poniższych zadań. Odpowiedzi zapisz w pliku wyniki3.txt, a każdą z nich poprzedź numerem odpowiedniego zadania.
Do dyspozycji masz plik liczby_przyklad.txt, spełniający warunki zadania – odpowiedzi dla tego pliku podano w treściach zadań. Możesz sprawdzać na nim działanie swojego programu.
Plik z danymi: liczby.txt
Uzupełnij luki oznaczone poziomymi kreskami w poniższym algorytmie sita Eratostenesa – algorytmie wyznaczania wszystkich liczb pierwszych nie większych od zadanej liczby całkowitej N > 1.
N – liczba całkowita większa od 1
Wynik:
SITO[1..N] – tablica logiczna taka, że dla i = 1, 2, …, N, SITO[ i ] = PRAWDA, gdy i jest liczbą pierwszą, natomiast SITO[ i ] = FAŁSZ, gdy i jest liczbą złożonąPoniżej uzupełnij luki w algorytmie i kliknij Sprawdź.
SITO[1] ← FAŁSZ dla i = 2, 3, …, N SITO[ i ] ← PRAWDA dla i = 2, 3, … , jeżeli SITO[ i ] = j ← dopóki j ≤ N wykonuj SITO[ j ] ← j ←
Dla każdej liczby x z pliku liczby.txt sprawdź, czy liczba x – 1 jest liczbą pierwszą. Podaj, ile liczb z pliku liczby.txt po pomniejszeniu o 1 daje liczbę pierwszą.
Dla pliku liczby_przyklad.txt odpowiedzią jest 94.
Poniżej wpisz odpowiedź dla pliku liczby.txt i kliknij Sprawdź.
Odpowiedź dla pliku liczby.txt:
Hipoteza Goldbacha głosi, że każda liczba parzysta większa od 2 jest sumą dwóch liczb pierwszych. Nie wiemy, czy ta hipoteza jest prawdziwa dla wszystkich liczb parzystych dodatnich, ale została potwierdzona dla wszystkich liczb „rozsądnej wielkości", zwłaszcza dla nie przekraczających 10¹⁸. Oczywiście liczba może mieć więcej niż jeden rozkład na sumę dwóch liczb pierwszych, np. 22 = 19 + 3 = 17 + 5 = 11 + 11. Dla każdej z liczb z pliku liczby.txt rozstrzygnij, na ile różnych sposobów da się ją przedstawić jako sumę dwóch liczb pierwszych.
Podaj:
Uwaga: przyjmujemy, że dwa rozkłady są różne, jeśli nie zawierają takiej samej pary składników. Przykładowo: rozkłady 22 = 19 + 3 i 22 = 3 + 19 są takie same.
Dla pliku liczby_przyklad.txt odpowiedzią jest: 996 37 4 1 (liczba 996 ma 37 rozkładów, a 4 tylko jeden)
Poniżej wpisz odpowiedź dla pliku liczby.txt (liczba z największą liczbą rozkładów i jej liczba rozkładów, liczba z najmniejszą liczbą rozkładów i jej liczba rozkładów) i kliknij Sprawdź.
Odpowiedź dla pliku liczby.txt:
Dla każdej liczby z pliku liczby.txt znajdź jej reprezentację w systemie szesnastkowym. Dla każdej cyfry szesnastkowej podaj, ile razy występuje ona łącznie w zapisach szesnastkowych wszystkich liczb z pliku liczby.txt.
Dla pliku liczby_przyklad.txt odpowiedzią jest 0:2, 1:3, 2:5, 3:2, 4:94, 5:0, 6:1, 7:0, 8:2, 9:2, A:0, B:0, C:1, D:1, E:3, F:0.
Poniżej dla każdej cyfry szesnastkowej wpisz, ile razy występuje ona w zapisach liczb z pliku liczby.txt, i kliknij Sprawdź.
| Cyfra | Liczba wystąpień |
|---|---|
| 0 | |
| 1 | |
| 2 | |
| 3 | |
| 4 | |
| 5 | |
| 6 | |
| 7 | |
| 8 | |
| 9 | |
| A | |
| B | |
| C | |
| D | |
| E | |
| F |
W EKOdomu działa instalacja zbierająca z dachu wodę deszczową, która jest retencjonowana w zbiorniku i wykorzystywana do celów gospodarczych. W pliku ekodom.txt zapisano ilość zebranej wody deszczowej w kolejnych dniach 2022 roku (w litrach).
Fragment pliku:
data retencja 01.01.2022 0 02.01.2022 0 03.01.2022 0
Schemat wykorzystania wody deszczowej:
Z wykorzystaniem danych zawartych w plikach i dostępnych narzędzi informatycznych, wykonaj zadania. Odpowiedzi zapisz w kolejnych wierszach pliku tekstowego wyniki4.txt. Odpowiedź do każdego zadania poprzedź numerem tego zadania.
Plik z danymi: ekodom.txt
a) Podaj najdłuższy okres bez opadów (kiedy zbiornik nie był napełniany), datę jego początku i końca.
b) Podaj, ile razy w okresie od 1 kwietnia do 30 września był podlewany ogródek.
Poniżej wpisz odpowiedzi i kliknij Sprawdź.
a) Liczba dni najdłuższego okresu bez opadów: dni; początek: , koniec:
b) Liczba podlewań ogródka:
Utwórz zestawienie łącznej ilości retencjonowanej wody w każdym miesiącu od stycznia do grudnia.
Na podstawie tego zestawienia utwórz wykres kolumnowy prezentujący ilość retencjonowanej wody w każdym miesiącu. Opisz osie: oś X to nazwa miesiąca, oś Y to łączna ilość retencjonowanej wody w litrach. Dodaj tytuł wykresu.
Kliknij Pokaż odpowiedź, aby zobaczyć wzorcowe rozwiązanie z klucza CKE – zestawienie łącznej retencji oraz gotowy wykres.
Zestawienie łącznej ilości retencjonowanej wody w poszczególnych miesiącach:
| miesiąc | retencja |
|---|---|
| styczeń | 2452 |
| luty | 1381 |
| marzec | 3755 |
| kwiecień | 4213 |
| maj | 3935 |
| czerwiec | 5566 |
| lipiec | 6516 |
| sierpień | 2698 |
| wrzesień | 5680 |
| październik | 12225 |
| listopad | 14761 |
| grudzień | 840 |
Na podstawie zestawienia tworzymy wykres kolumnowy: na osi X – nazwy miesięcy, na osi Y – łączna ilość retencjonowanej wody w litrach, wraz z tytułem wykresu.
W zbiorniku retencyjnym w dniu 1.01.2022 rano (przed użyciem) znajdowało się 5000 l wody.
a) Podaj liczbę dni w których zabrakło wody w zbiorniku, a brakującą ilość wody pobierano z wodociągów.
b) Podaj, ile łącznie litrów wody pobrano z wodociągów.
Poniżej wpisz odpowiedzi i kliknij Sprawdź.
a) Liczba dni:
b) Łączna ilość wody pobranej z wodociągów (w litrach):
W plikach tekstowych: klienci.txt, pokoje.txt, noclegi.txt. zapisano informacje dotyczące realizowanych usług hotelu „Panorama" w okresie od 1.07.2022 do 30.09.2022. Pierwszy wiersz każdego z plików jest wierszem nagłówkowym, a dane w wierszach rozdzielono znakami tabulacji.
Plik klienci.txt w każdym wierszu zawiera: numer dowodu gościa hotelu (nr_dowodu), nazwisko (nazwisko), imię (imie) i miejsce zamieszkania gościa (miejscowosc).
Przykład:
nr_dowodu nazwisko imie miejscowosc SAS253401 Pastuszak Joanna Szczecin UNC608098 Siudut Anna Jaworzno NMZ567271 Konopka Kamil Tarnowskie Gory
Plik pokoje.txt w każdym wierszu zawiera: numer pokoju (nr_pokoju), standard pokoju (standard, gdzie N oznacza normalny, a W – wysoki) oraz cenę wynajęcia pokoju na jedną dobę (cena).
Przykład:
nr_pokoju standard cena 101 N 220 102 N 220 103 N 220
W pliku noclegi.txt zapisano w każdym wierszu: identyfikator pobytu gościa (id_pobytu), datę przyjazdu gościa hotelu (data_przyjazdu), datę wyjazdu gościa (data_wyjazdu), numer dowodu gościa wynajmującego pokój (nr_dowodu) i numer pokoju, który wynajmował (nr_pokoju).
Przykład:
id_pobytu data_przyjazdu data_wyjazdu nr_dowodu nr_pokoju 198 2022-07-10 2022-07-12 JAA932190 501 199 2022-07-10 2022-07-11 SIS395155 108 206 2022-07-10 2022-07-13 RMS452742 113
Z wykorzystaniem danych zawartych w plikach i dostępnych narzędzi informatycznych, wykonaj zadania. Odpowiedzi zapisz w kolejnych wierszach pliku tekstowego wyniki5.txt. Odpowiedź do każdego zadania poprzedź numerem tego zadania.
Podaj imię i nazwisko gościa, który skorzystał łącznie z największej liczby noclegów podczas wszystkich swoich pobytów w hotelu „Panorama". Podaj liczbę tych noclegów.
Przykład: dla gościa, który przebywał w hotelu od 10.07.2022 do 12.07.2022 oraz od 15.08.2022 do 18.08.2022 łączna liczba noclegów wynosi 2 + 3 = 5.
Poniżej wpisz odpowiedź (imię i nazwisko oraz liczbę noclegów) i kliknij Sprawdź.
Imię i nazwisko: ; liczba noclegów:
Podaj zestawienie (imiona i nazwiska) osób, które zapłaciły łącznie za noclegi powyżej 2000 zł.
Wpisz imiona i nazwiska – po jednej osobie w wierszu – i kliknij Sprawdź.
Podaj numery pokoi o normalnym standardzie (N), których w okresie od 1.07.2022 do 30.09.2022, nie wynajmował nikt z Opola i nikt z Katowic.
Wpisz numery pokoi – po jednym w wierszu – i kliknij Sprawdź.
Informacja do zadań 5.4. i 5.5.
Załóżmy, że do opisanych wcześniej tabel bazy danych: klienci, pokoje, noclegi dodano jeszcze jedną – uslugi_dodatkowe, w której zapisano usługi zamówione przez gości hotelu.
Tabela uslugi_dodatkowe składa się z pól:
data_wykonania (data, kiedy usługa została wykonana),
id_pobytu (identyfikator pobytu gościa, który zamówił usługę),
rodzaj (rodzaj usługi: śniadanie, obiad, kolacja, basen, masaż, fryzjer),
cena_uslugi (cena, którą gość zapłacił za usługę).
Napisz zapytanie SQL, którego wynikiem będzie zestawienie, w którym dla każdego rodzaju usługi podana będzie liczba wszystkich zamówień tej usługi.
Kliknij Pokaż odpowiedź, aby zobaczyć 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.
SELECT rodzaj, Count(*) FROM Uslugi_dodatkowe GROUP BY rodzaj;
Napisz zapytanie SQL, którego wynikiem będzie zestawienie zawierające dane gości (imię i nazwisko) korzystających z usług dodatkowych oraz łączne kwoty, jakie zapłacili za usługi dodatkowe.
Kliknij Pokaż odpowiedź, aby zobaczyć 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.
SELECT Klienci.imie, Klienci.nazwisko, Sum(uslugi_dodatkowe.cena_uslugi) FROM uslugi_dodatkowe INNER JOIN (Klienci INNER JOIN Noclegi ON Klienci.nr_dowodu = Noclegi.nr_dowodu) ON uslugi_dodatkowe.id_pobytu = Noclegi.id_pobytu GROUP BY Klienci.nr_dowodu, Klienci.imie, Klienci.nazwisko;
Dopasuj odpowiedni protokół (FTP, SMTP, IMAP, HTTPS) do podanego opisu:
Poniżej wpisz nazwy protokołów i kliknij Sprawdź.
| Opis | Protokół |
|---|---|
| Protokół wysyłania poczty elektronicznej: | |
| Protokół przesyłania plików: | |
| Szyfrowany protokół przesyłania dokumentów hipertekstowych: | |
| Protokół odbierania poczty elektronicznej: |
Oceń prawdziwość podanych zdań. Zaznacz P, jeśli zdanie jest prawdziwe, albo F – jeśli jest fałszywe.
| Zdanie | ||
|---|---|---|
| 1. | Klucz symetryczny umożliwia przeprowadzanie operacji szyfrowania i deszyfrowania. | |
| 2. | W szyfrowaniu symetrycznym używa się dwóch kluczy: prywatnego i publicznego. |
Uzupełnij tabelę. Zapisz wyniki działania w zapisie czwórkowym i szesnastkowym.
Poniżej wpisz wyniki i kliknij Sprawdź.
| Działanie na liczbach zapisanych w systemie czwórkowym | Wynik działania zapisany w systemie czwórkowym | Wynik działania zapisany w systemie szesnastkowym |
|---|---|---|
| 3211₄ + 2322₄ | ||
| 3211₄ - 2322₄ |