Cześć z tej strony Arek zent ki maturalnie dzisiaj porozmawiamy o czterech błędach które maturzyści popełniają najczęściej właśnie na maturze nie chodzi o konkretne problemy z algorytmami jak na przykład błędy w sortowaniu ale o uniwersalne pułapki które utrudniają rozwiązywanie zadania wydłużają czas tego rozwiązania albo wprowadzają niepotrzebny chaos który może kosztować c w konsekwencji nawet stratę punktów na maturze w tej części skupimy się na najczęstszych błędach które pojawiają się w rytmach i w programowaniu a w kolejnej części w kolejnym materiale opowiemy sobie o najczęstszych błędach w kontekście Excela accessa oraz samych przygotowaniach do matury zaczynajmy matura z informatyki potrafi być zdradliwa nie wystarczy umieć programować trzeba dobrze rozumieć treść zadań sprawnie poruszać się po dostępnych narzędziach jak arkusze kalkulacyjne czy bazy danych No i nie pogubić się w szczegółach dobra wiadomość jest taka że potknięcia które najczęściej się pojawiają i które za chwilkę ci pokażę są dość proste do wyeliminowania ważne jest tylko żeby w trakcie nauki i przygotowań miecie cały czas w tyłu głowy żeby były taką częścią twojej świadomej nauki zatem Przyjrzyjmy się gdzie najczęściej Zdarzają się błędy i jak im zapobiegać niedokładne wczytanie się w treść zadania jednym z najczęstszych błędów i przy okazji jednym z błędów które najłatwiej wyeliminować jest pomijanie dokładnej analizy treści zadania wiele osób zamiast przeczytać sobie dokładnie treść zadania Czasami może nawet dwukrotnie podkreślić kluczowe informacje to od razu przechodzi do pisania pseudokodu czy tworzenia kodu taki pośpiech często prowadzi do pominięcia istotnych szczegółów takich jak wymagany format wejścia kolejność działań czy specyficzne warunki Spójrzmy na takie zadanie stworzenia algorytmów 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 licby 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 autorzy nieco ułatwi nam tu analizę Bo podkreślili najważniejsze elementy Ale nie zawsze tak jest w przypadku zadań dotyczących pisania algorytmów przede wszystkim Sprawdź uważnie założenia oraz ograniczenia czyli właśnie te sekcje w kontekście naszych rozważań nie ma znaczenia za bardzo czym taki nieparzysty skrót jest chodzi o schemat mamy powiedziane że dla danej zadanej liczby n nieparzysty skrót istnieje więc nie ma tu też sensu pisać kodu który będzie to sprawdzał ważne jest też zapoznanie się z listą ograniczeń jeśli co jeśli użyłem takiej funkcji wbudowanej albo operatora potęgowania A jak widać w powyższym przykładzie nie można było tego zrobić nie ma sensu dokładać sobie stresu wszystko czego możesz użyć jest tu wymienione i zawsze dostępne więc w razie wątpliwości zerknij na tę listę Jeszcze raz Spójrzmy na jeszcze jedno zdanko z tej samej matury 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 tym razem autorzy nie podkreś już wszystkiego co istotne w kontekście precyzyjnej odpowiedzi na postawione przed nami zadanie tutaj też przyznam że sam się na tym łapię bo często wpadamy do aesa czy też piszemy zapytanie SQL odpowiedź wydaje się Poprawna gotowe zapisujemy ją do pliku ale uwaga potem okazuje się że nie zdobyliśmy maksymalnej liczby punktów Dlaczego Bo nie posortowani alfabetycznie naszego zestawienia przy zapisywaniu odpowiedzi warto spojrzeć jeszcze raz do treści zadania czy na pewno uwzględniliśmy wszystko o co nas poproszono dlatego tak dobrze sprawdza się podkreś przy pierwszym czytaniu bo na koniec możemy szybkim zerknięcie tylko upewnić się czy każdy z kroków został zrealizowany Jak uniknąć tego typu błędów Zanim zaczniesz pisać kod czy rozwiązywać zadanie Poświęć te kilkanaście dodatkowych sekund aby dwa a nawet trzy razy przeczytać polecenie podkreślaj słowa kluczowe i dopytuj sam siebie czy na pewno wiem co mam zrobić pomijanie aspektu czytelności kodu może wydawać się że pomijanie komentarzy i stosowanie krótkich nieznaczących nic nazw dla naszych zmiennych pozwoli nam na maturze trochę czasu oszczędzić Ale w rzeczywistości może kosztować cię to dużo więcej wysiłku Szczególnie jeśli coś przestanie działać często chcąc oszczędzić czas nadajemy naszym zmiennym krótkie nic nieznaczące nazwy na przykład x y z Jednak gdy algorytm się rozrośnie i musisz znaleźć w nim błąd to takie nazwy stają się koszmarem trudno od razu zrozumieć co dana zmienna przechowuje lub do czego służy zerknij my na takie dwa przykłady druga opcja pozwala zrozumieć co autor miał na myśli bez dogłębnej analizy samego kodu prawda a na maturze częściej więcej czasu oszczędzisz jeżeli nadasz właśnie takie opisowe nazwy niż jednoliterowe nazwy które na początku są dla nas jasne ale po chwili zapominamy co tak naprawdę tam w nich się działo Jak uniknąć tego typu błędów Po pierwsze stosuj opisowe nazwy zmiennych zamiast zmiennej aaa Użyj zbiór liczb całkowitych zamiast bbb Wybierz największa liczba w zbiorze dzięki temu od razu wiesz co dana zmienna przechowuje i Jaką ma rolę w algorytmie dobra nazwa powoduje że nie potrzebujemy dodatkowych komentarzy od razu wiemy o co nam chodziło ułatwiaj sobie też debugowanie gdy pojawi się błąd nazwy takie jak liczba elementów w zbiorze pozwalają szybko zidentyfikować problematyczny fragment kodu przy krótkich nazwach musisz analizować cały kod by przypomnieć sobie Do czego służy dana zmienna brak testów lub zbyt pobieżne sprawdzenie poprawności rozwiązania brak dokładnych testów napisanego kodu jest jednym z najczęstszych błędów które maturzyści żałują zaraz po wyjściu z sali egzaminacyjnej wiele osób ogran się do uruchomienia swojego programu na jednym jakimś oczywistym zestawie danych No i skoro taki program działa No to uznaje że problem jest rozwiązany niestety takie podejście może prowadzić do dość bolesnych niespodzianek Kiedy nasz program napotka na jakieś dane skrajne lub nietypowe co gorsza nawet drobny błąd w implementacji na przykład zastosowanie znaku mniejszości zamiast znaku mniejszy bądź równy może prowadzić do całkowicie niepoprawnych wyników w niektórych przypadkach Spójrzmy teraz na takie zadanie 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 I tu mamy też informację że dla pliku który był załączony liczby przykład TXT odpowiedzią były wartości 552 50 oraz 5 jak widać to na tym zadaniu zadania z programowania mają dwa zestawy danych pierwszy bardziej rozbudowany tutaj to był ten plik liczby TXT oraz uproszczony tutaj był to plik liczby przykład TXT często uproszczony zestaw nie zawiera nietypowych przypadków które w ramach rozbudowanego pliku już się pojawiają dlatego sama poprawna odpowiedź dla pliku przykładowego to może być za mało żeby uzyskać pełną liczbę punktów za takie zadania często w kluczu mamy wspomniane że przy nieuwzględnieniu pewnych skrajnych przypadków maturzysta otrzyma nieco inne wyniki które będą gorzej lub czasami w ogóle nie będą punktowane Jak tego uniknąć Sprawdź wyniki dla obu zestawów danych jeśli wcześniej rozwiążesz sporo zadań maturalnych i poznasz schematy to od razu lub po nieco dokładniejszej analizie tego czego się spodziewasz wynik może wydać ci się podejrzany więc też automatycznie zerkniesz do swojego rozwiązania jeszcze raz czy na pewno wszystkie te warunki zostały tam uwzględnione niekorzystanie z dopasowanych struktur danych lub funkcji wbudowanych złe dobranie struktur danych lub niekorzystanie z funkcji wbudowanych samo w sobie oczywiście nie jest błędem i nie wpłynie na to czy nasz program działa poprawnie czy też nie może to natomiast znacząco utrudnić napisanie poprawnego kodu lub znacznie wydłużyć czas który jest potrzebny na realizację danego zadania na maturze bardzo rzadko trzeba sięgać po jakieś zaawansowane struktury danych ale znajomość tych podstawowych takich jak listy słowniki zbiory może zaoszczędzić mnóstwo czasu Kiedyś na maturze pojawiło się mniej więcej takie zadanie z programowania z liczb wystąpienia liter w ciągu znaków można to zrobić na różne sposoby ale niektóre podejścia będą prostsze i wydaj niż inne w tym podejściu używamy listy co wymaga od nas sprawdzenia czy litera już się w tej liście znajduje a następnie ręcznego aktualizowania liczników No w tym przypadku kod wydaje się dość nieczytelny i wymaga wielu ręcznych operacji a sama jego analiza na pewno chwilę potrwa tym razem dobieramy Bardziej dopasowaną do tego zadania strukturę danych czyli słownik słownik pozwala na szybkie wyszukiwanie i aktualizowanie wartości a o to nam tutaj chodzi kod jest prostszy i bardziej czytelny i jeszcze trzecia opcja gdzie korzystamy z dedykowane zadania funkcji wbudowanej Wymaga to oczywiście jej wcześniejszej znajomości ale jeśli poznasz najważniejsze funkcje wbudowane które najczęściej pojawiamy się na maturze to zobacz jak dużo czasu możesz oszczędzić i jak dużo potencjalnych błędów możesz uniknąć tutaj taka drobna reklama w kursie na maturalnie oczywiście omawiamy wszystkie takie najprzydatniejsze funkcje wbudowane Pamiętaj tylko że na maturze nie musisz dobrać idealnej struktury danych czy funkcji wbudowany do danego zadania mogą one znacznie ułatwić ci pracę ale jeśli nic przychodziło ci do głowy to spokojnie podejść do jakiegoś problemu Nawet na około dobór narzędzi ma ci pomagać a nie cię paraliżować podsumujmy to co omówiliśmy sobie dzisiaj najczęstsze błędy które pojawiają się na maturze w kontekście programowania i algorytmów to niedokładne wczytanie się w treść zadania analiza treści zadania to nasz fundament pomijanie aspektu czytelności kodu przejrzysty kod to mniej błędów i szybsze debugowanie brak testów lub pobieżne sprawdzenie rozwiązania zawsze testuj swój kod na wszystkich dostępnych zbiorach danych niekorzystanie z dostosowanych do problemu struktur danych i funkcji wbudowanych korzystajmy z narzędzi które mogą ułatwić nam rozwiązywanie naszych problemów jeśli ten materiał był dla ciebie pomocny zostaw koniecznie łapkę w górę i zasubskrybuj kanał aby nie przegapić kolejnych materiałów wpadnij też na naszą platformę and Code me maturalnie gdzie znajdziesz pełny kurs do matury z informatyki Dzięki że dzisiaj ze mną byliście Uczcie się mądrze testujcie swoje rozwiązania i nie Bójcie się pytać do zobaczenia w kolejnych odcinkach a