Zadanie 1: Plansza - Matura z Informatyki 2024

Dana jest prostokątna plansza złożona z n wierszy i m kolumn zawierająca n · m pól. Wiersze są ponumerowane od góry kolejnymi liczbami 1, 2, …, n, natomiast kolumny od lewej do prawej kolejnymi liczbami 1, 2, …, m. Każde pole jest albo białe, albo czarne.
Planszę możemy opisać jako tablicę dwuwymiarową A[1..n][1..m], w której A[i][j] = 0, jeśli pole w i-tym wierszu i j-tej kolumnie jest czarne, natomiast A[i][j] = 1, jeśli to pole jest białe. Pola w lewym górnym rogu oraz prawym dolnym rogu zawsze są białe (czyli A[1][1] = 1 oraz A[n][m] = 1).
Rozważmy następujący algorytm, w którym jest wykorzystywana pomocnicza tablica P[1..n][1..m], przyjmująca wartości logiczne (PRAWDA albo FAŁSZ).
Specyfikacja: Dane: n, m – liczby całkowite dodatnie, wymiary planszy A[1..n][1..m] – opis planszy Wynik: PRAWDA albo FAŁSZ
Zadanie 1.1: Wynik algorytmu dla plansz na rysunkach

Podaj wynik działania algorytmu dla plansz podanych na rysunkach poniżej, gdzie n to liczba wierszy, a m to liczba kolumn danej planszy.
- a) n = 3, m = 3
- b) n = 5, m = 3
- c) n = 5, m = 5
Zadanie 1.2: Przykłady plansz z wynikiem FAŁSZ lub PRAWDA

Przy założeniu, że lewy górny i prawy dolny róg planszy są białe, podaj przykład planszy (zamaluj odpowiednie pola lub wpisz w nie zera):
- a) o 5 wierszach i 5 kolumnach, na której co najwyżej 2 pola są czarne, a wynikiem działania algorytmu jest FAŁSZ
- b) o 4 wierszach i 4 kolumnach, na której co najmniej 9 pól jest czarnych, a wynikiem działania algorytmu jest PRAWDA
Zadanie 1.3: Największa liczba czarnych pól na planszy kwadratowej

Dana jest kwadratowa plansza o n wierszach i n kolumnach. Podaj, jaka jest największa możliwa liczba czarnych pól na tej planszy, dla których wynikiem działania algorytmu jest PRAWDA.
Zadanie 2: Cyfry - Matura z Informatyki 2024

Przeanalizuj poniższy algorytm, który dla danej nieujemnej liczby całkowitej n oblicza liczbę całkowitą c.
Uwaga: x mod y, x div y oznaczają odpowiednio resztę i iloraz z dzielenia całkowitego x przez y.
Zadanie 2.1: Tabela wartości c i liczby wykonań instrukcji

Uzupełnij poniższą tabelę – dla każdej z podanych liczb wpisz wartość zmiennej c po wykonaniu algorytmu oraz liczbę wykonań instrukcji c ← c + b.
n: 33658, 11314, 3, 542102, 87654321012345678
Zadanie 2.2: Wartość c dla liczby 333666999

Podaj wartość c po wykonaniu algorytmu dla osiemnastocyfrowej liczby całkowitej n, w której pierwszych sześć cyfr to 3, następnych sześć cyfr to 6, a pozostałych sześć cyfr to 9.
Zadanie 3: Nieparzysty skrót - Matura z Informatyki 2024

Nieparzystym skrótem dodatniej liczby całkowitej n nazwiemy dodatnią liczbę całkowitą m, która powstaje przez usunięcie cyfr parzystych z zapisu dziesiętnego liczby n. Nieparzysty skrót liczby całkowitej n nie istnieje, gdy jej zapis dziesiętny składa się tylko z cyfr parzystych.
Przykład:
- Nieparzystym skrótem liczby 294762 jest liczba 97.
- Nieparzystym skrótem liczby 39101 jest liczba 3911.
- Nieparzysty skrót liczby 224 nie istnieje.
Zadanie 3.1: Funkcja wyznaczająca nieparzysty skrót

W postaci pseudokodu lub w wybranym języku programowania napisz funkcję, która dla dodatniej całkowitej liczby n, takiej że istnieje dla niej nieparzysty skrót, wyznaczy liczbę m – nieparzysty skrót liczby n.
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, resztę z dzielenia oraz porównywanie liczb, instrukcje sterujące, przypisania do zmiennych lub samodzielnie napisane funkcje, wykorzystujące wyżej wymienione operacje. Zabronione jest używanie funkcji wbudowanych oraz operatorów innych niż wymienione.
Specyfikacja: Dane: n – dodatnia liczba całkowita, taka że istnieje dla niej nieparzysty skrót Wynik: m – nieparzysty skrót liczby n Algorytm:
Zadanie 3.2: Liczby bez nieparzystego skrótu w pliku skrot.txt

Plik skrot.txt zawiera 200 dodatnich liczb całkowitych, mniejszych od 30 000. Każda liczba jest zapisana w osobnym wierszu. Dla co najmniej jednej z tych liczb nie istnieje nieparzysty skrót.
Napisz program, który wyznaczy liczbę wszystkich liczb z pliku skrot.txt, dla których nie istnieje nieparzysty skrót, oraz poda największą z nich. Odpowiedź zapisz w pliku wyniki3_2.txt.
Plik skrot_przyklad.txt zawiera 20 liczb mniejszych od 30 000. Dla danych zawartych w pliku skrot_przyklad.txt prawidłową odpowiedzią jest: 2 i 2428 (w pliku są dwie liczby, dla których nie istnieje nieparzysty skrót: 266 i 2428; 2428 jest największą z nich).
Zadanie 3.3: Liczby z NWD równym 7 w pliku skrot2.txt

Plik skrot2.txt zawiera 200 dodatnich liczb całkowitych, mniejszych od 30 000. Każda liczba jest zapisana w osobnym wierszu. Dla każdej z tych liczb istnieje nieparzysty skrót.
Napisz program, który wypisze te liczby z pliku skrot2.txt, dla których największy wspólny dzielnik liczby i jej nieparzystego skrótu jest równy 7. Odpowiedź zapisz w pliku wyniki3_3.txt. Twój program powinien wypisać w każdym wierszu wyniku po jednej liczbie z pliku skrot2.txt, dla której jest spełniony powyższy warunek.
Plik skrot2_przyklad.txt zawiera 20 liczb spełniających warunki zadania. Dla danych zawartych w pliku skrot2_przyklad.txt prawidłową odpowiedzią jest: 4872 i 23527.
Zadanie 4: Liczby - Matura z Informatyki 2024

Plik liczby.txt składa się z dwóch wierszy: pierwszy wiersz pliku zawiera 3000 liczb pierwszych z przedziału [2, 2000]; drugi wiersz pliku zawiera 20 liczb całkowitych z przedziału [2, 1 000 000 000]. Liczby w wierszach są rozdzielone znakami spacji.
Napisz program (lub kilka programów), który(-e) znajdzie(-ą) odpowiedzi do podanych zadań. Każdą odpowiedź zapisz w pliku wyniki4.txt i poprzedź ją numerem oznaczającym zadanie.
Do Twojej dyspozycji jest plik liczby_przyklad.txt, który zawiera 200 liczb w pierwszym wierszu (są to wyłącznie liczby 2, 3, 5, 7 i 31) oraz 20 liczb w drugim wierszu. Odpowiedzi dla danych z tego pliku są umieszczone pod każdym zadaniem.
Pamiętaj, że Twój program musi ostatecznie zadziałać na pliku liczby.txt z 3000 liczb w pierwszym wierszu.
Zadanie 4.1: Liczb będących dzielnikami w drugim wierszu

Podaj, ile liczb z pierwszego wiersza jest dzielnikiem jakiejkolwiek liczby spośród liczb z drugiego wiersza.
Dla pliku liczby_przyklad.txt odpowiedzią jest 199 (tylko liczba 31, która występuje raz, nie jest dzielnikiem żadnej z liczb w drugim wierszu).
Zadanie 4.2: Sto pierwsza liczba po uporządkowaniu od największej

Spośród liczb z pierwszego wiersza podaj liczbę, która jest sto pierwszą liczbą w kolejności, licząc od największej po ich uporządkowaniu.
Przykład: wśród liczb 2, 4, 2, 3, 3, 4 drugą w kolejności, licząc od największej, jest liczba 4.
Dla pliku liczby_przyklad.txt odpowiedzią jest 5.
Zadanie 4.3: Liczb jako iloczyn liczb z pierwszego wiersza

Dla każdej z liczb z drugiego wiersza rozstrzygnij, czy da się ją przedstawić jako iloczyn jedynie liczb z pierwszego wiersza. Przy tym liczba wystąpień danego czynnika w iloczynie nie może być większa niż liczba wystąpień tego czynnika w pierwszym wierszu. Znajdź wszystkie liczby, które da się tak przedstawić, i je wypisz.
Dla pliku liczby_przyklad.txt odpowiedzią są liczby: 10 12 14 15 18 20 21 25 27 28
(liczbę 16 można przedstawić jako iloczyn 2 · 2 · 2 · 2, jednak w pierwszym wierszu liczba 2 występuje tylko dwa razy, więc 16 nie należy do rozwiązania. Podobnie jest z liczbą 24, którą można przedstawić jako iloczyn 2 · 2 · 2 · 3).
Zadanie 4.4: Spójny fragment o największej średniej arytmetycznej

Znajdź w ciągu liczb z pierwszego wiersza spójny fragment, który zawiera co najmniej 50 elementów i którego średnia arytmetyczna jest największa. Jeżeli jest więcej niż jeden taki fragment, wybierz ten, który występuje jako pierwszy w pliku liczby.txt.
W odpowiedzi wypisz:
- znalezioną najwyższą średnią
- liczbę elementów ciągu z tą najwyższą średnią
- liczbę, która jest pierwszym elementem tego ciągu
Dla pliku liczby_przyklad.txt odpowiedzią jest: 5,52; 50; 5 (największa średnia to 5,52 dla 50 liczb zaczynających się od liczby 5).
Zadanie 5: Protokoły sieciowe - Matura z Informatyki 2024

Oceń prawdziwość podanych zdań. Zaznacz P, jeśli zdanie jest prawdziwe, albo F – jeśli jest fałszywe.
- HTTP to protokół komunikacyjny opisujący sposób przekazywania poczty elektronicznej w internecie.
- FTP to protokół zamiany nazw domenowych na adresy IP.
- DHCP to protokół umożliwiający hostom uzyskanie od serwera danych konfiguracyjnych, np. adresu IP, adresu bramy sieciowej, adresu serwera DNS.
Zadanie 6: Systemy liczbowe - Matura z Informatyki 2024

Wykonaj działania na liczbach zapisanych w systemie trójkowym i systemie dziewiątkowym. Wyniki podaj w systemie trójkowym.
101112₃ + 121₉ = … 101112₃ − 121₉ = …
Zadanie 7: Hurtownia - Matura z Informatyki 2024

Pewna hurtownia sprzedaje jabłka. W pliku jablka.txt znajduje się 2500 wierszy z danymi dotyczącymi sprzedaży jabłek od 3 stycznia 2022 roku do 31 grudnia 2022 roku. W każdym wierszu podane są dane opisujące jedną transakcję sprzedaży, oddzielone pojedynczymi znakami tabulacji:
- data sprzedaży zapisana w formacie rrrr-mm-dd
- nazwa odmiany jabłka
- kod, który określa, czy odmiana jest: L – letnia, J – jesienna czy Z – zimowa
- numer NIP klienta (13-znakowy tekst)
- liczba kilogramów sprzedanego towaru
Fragment pliku jablka.txt: 2022-01-03 Jonagold Z 128-29-15-591 470 2022-01-03 Jonagold Z 192-09-72-275 410 2022-01-03 Jonagored Z 140-36-11-559 242
Cena sprzedaży jednego kilograma jabłek zależy od odmiany jabłek. W pliku cennik.txt jest podana cena w złotych 1 kg jabłek każdej odmiany.
Fragment pliku cennik.txt: Alwa 2,9 Antonowka 3,2 Cortland 3,2
Z wykorzystaniem powyższych danych oraz dostępnych narzędzi informatycznych wykonaj podane zadania. Wyniki zapisz w pliku tekstowym wyniki7.txt. Odpowiedź do każdego zadania poprzedź numerem tego zadania.
Zadanie 7.1: Klienci z największą sprzedażą jabłek zimowych

Dla każdego klienta policz, ile kupił on łącznie (we wszystkich swoich transakcjach) kilogramów jabłek odmian zimowych. Podaj numery NIP trzech klientów, którzy kupili najwięcej jabłek odmian zimowych (Z), oraz podaj dla każdego z nich liczbę kilogramów jabłek odmian zimowych przez nich kupionych.
Zadanie 7.2: Przychód hurtowni i najbardziej dochodowa odmiana

Przychód z pojedynczej sprzedaży to cena sprzedaży jednego kilograma jabłek pomnożona przez liczbę kilogramów. Podaj całkowity przychód hurtowni uzyskany w całym okresie. Podaj nazwę odmiany jabłek, która dała największy przychód.
Zadanie 7.3: Najpopularniejsza odmiana w miesiącu i wykres kolumnowy

Wykonaj zestawienie, w którym dla każdego miesiąca roku 2022 podasz nazwę najbardziej popularnej odmiany w tym miesiącu, czyli takiej, której w danym miesiącu sprzedano najwięcej.
Na podstawie wykonanego zestawienia utwórz wykres kolumnowy ilustrujący wielkości sprzedaży najpopularniejszych odmian jabłek w poszczególnych miesiącach. Pamiętaj o czytelnym opisie wykresu – na osi X umieść dla każdego miesiąca jego nazwę połączoną z nazwą najbardziej popularnej odmiany w tym miesiącu, dodaj opis osi Y i tytuł wykresu.
Zadanie 7.4: System rabatów klientów hurtowych

Hurtownia ma system premiowania klientów hurtowych. Klient otrzymuje przy zakupie rabat, którego wysokość zależy od łącznej ilości jabłek zakupionych do tej pory przez tego klienta, wliczając w to jabłka zakupione w bieżącej transakcji.
Wysokość rabatu za każdy kilogram w bieżącej transakcji wynosi:
- 5 gr, jeśli klient dotychczas zakupił co najmniej 15 000 kg, ale mniej niż 20 000 kg
- 10 gr, jeśli klient dotychczas zakupił co najmniej 20 000 kg
Podaj, w ilu transakcjach hurtownia udzieliła rabatu, oraz podaj łączną wartość tych rabatów w złotych.
Przykład:
Załóżmy, że przed 1.04.2022 klient z NIP 128-29-15-591 zakupił łącznie 10 000 kg jabłek, klient 192-09-72-275 nabył 14 900 kg, a klient 140-36-11-559 kupił 19 900 kg. Wtedy dla przykładowych danych 1.04.2022:
2022-04-01 Jonagold Z 128-29-15-591 470 2022-04-01 Jonagold Z 192-09-72-275 410 2022-04-01 Jonagored Z 140-36-11-559 242
- pierwszy klient, po dokonaniu transakcji 1.04.2022, będzie miał już 10 470 kg zakupionych jabłek i dla tej transakcji jeszcze nie należy się rabat
- drugi klient, po dokonaniu transakcji 1.04.2022, będzie miał już 15 310 kg zakupionych jabłek, czyli podczas tej transakcji otrzyma 5 gr rabatu na każdy kilogram kupowanych tego dnia jabłek (5 gr · 410 = 20,50 zł rabatu)
- trzeci klient, po dokonaniu transakcji 1.04.2022, będzie miał już 20 142 kg zakupionych jabłek i podczas tej transakcji otrzyma 10 gr rabatu za każdy kilogram (10 gr · 242 = 24,20 zł rabatu)
Zadanie 8: Rejestr wykroczeń - Matura z Informatyki 2024

W trzech plikach tekstowych o nazwach: kierowcy.txt, taryfikator.txt, rejestr.txt, zapisano dane związane z przekroczeniem dozwolonych prędkości pojazdów na pewnej trasie w okresie 2023-01-01 – 2023-12-30 (wszystkie dane są fikcyjne i wygenerowane na potrzeby zadania). Pierwszy wiersz każdego z plików jest wierszem nagłówkowym, a dane w wierszach rozdzielono znakiem średnika.
Plik o nazwie kierowcy.txt zawiera informacje o 1000 osobach będących właścicielami samochodów. W każdym wierszu znajduje się: IdOsoby – identyfikator kierowcy; Imie – imię; Nazwisko – nazwisko; NrRejestracyjny – numer rejestracyjny samochodu.
Przykład: IdOsoby;Imie;Nazwisko;NrRejestracyjny 1;Echo;Ayala;FVX4190 2;Nolan;Stein;DUG5882 3;Lee;Joseph;TBG6984
Plik o nazwie taryfikator.txt zawiera informacje o 6 rodzajach wykroczeń związanych z przekroczeniem prędkości. W każdym wierszu znajdują się: IdWykroczenia – identyfikator wykroczenia; Wykroczenie – opis wykroczenia; Punkty – liczba punktów karnych za dane wykroczenie; Kwota – kwota mandatu, jaką należy zapłacić za to wykroczenie.
Przykład: IdWykroczenia;Wykroczenie;Punkty;Kwota 1;Przekroczenie predkosci do 10 km/h;0;50 2;Przekroczenie predkosci od 11 do 20 km/h;2;100 3;Przekroczenie predkosci od 21 do 30 km/h;4;200 4;Przekroczenie predkosci od 31 do 40 km/h;6;300 5;Przekroczenie predkosci od 41 do 50 km/h;8;400 6;Przekroczenie predkosci od 51 km/h;10;500
Plik o nazwie rejestr.txt zawiera informacje o zarejestrowanych wykroczeniach. Do oceny oddajesz plik tekstowy wyniki8.txt – zawierający odpowiedzi do poszczególnych zadań (odpowiedź do każdego zadania powinna być poprzedzona jego numerem) – oraz plik(i) zawierające komputerową realizację obliczeń.
Zadanie 8.1: Kierowca z największą sumą mandatów

Podaj imię i nazwisko kierowcy, dla którego suma kwot za wszystkie mandaty była największa, oraz podaj tę największą sumę. Jest tylko jeden taki kierowca.
Zadanie 8.2: Miesiąc z najmniejszą liczbą punktów karnych

W którym miesiącu kierowcy otrzymali najmniej punktów karnych (łącznie) za wykroczenia polegające na przekroczeniu dozwolonej prędkości o więcej niż 20 km/h (wykroczenia o identyfikatorach od 3 do 6)? Podaj miesiąc oraz łączną liczbę punktów karnych z tego miesiąca.
Zadanie 8.3: Samochody bez zarejestrowanych wykroczeń

Wykonaj zestawienie numerów rejestracyjnych samochodów wraz z imionami i nazwiskami ich właścicieli, którzy nie figurują w rejestrze wykroczeń. Zestawienie posortuj alfabetycznie według numerów rejestracyjnych samochodów.
Zadanie 8.4: Fotoradary bez zarejestrowanych wykroczeń (SQL)

Baza danych rejestru wykroczeń została zmodyfikowana. Dodano nową tabelę Fotoradar, wraz z polami IdFotoradaru, Miejscowosc i DozwolonaPredkosc. Natomiast do tabeli Rejestr zostało dodane pole IdFotoradaru, w którym dla każdego rekordu zapisano identyfikator tego fotoradaru, który zarejestrował dane wykroczenie.
Załóżmy, że w bazie istnieją fotoradary, które nie zarejestrowały żadnych wykroczeń. Zapisz w języku SQL zapytanie, w wyniku którego otrzymasz identyfikatory tych fotoradarów.