Matura z informatyki

0

Zdaję w tym roku maturę z informatyki i mam kilka pytać dotyczących części teoretycznej. O ile z częścią praktyczną nie mam problemu, tak mam wątpliwości co do teorii. Kto się orientuje jak wyglądają arkusze, ten wie że trzeba tam napisać na papierze (co w mojej opinii jest bez sensu) jakiś kod w wybranym języku programowania lub w pseudokodzie. Ja bym pisał w cpp, ale tutaj pojawią się watpliwości w stylu:

  • jeśli chcę użyć dodatkowych tablic to mam gdzieś napisać deklaracje tych tablic, czy po prostu napisać, że ich używam?
  • jeśli nie podana zostanie maksymalna wielkość danych, a ja potrzebuje tablicy to mam napisać coś w stylu: rozmiar tablicy zależy od wielkości danych (np. każą mi posortować tablicę, a ja chcę napisać sortowanie przez zliczanie do którego potrzebuje znać maksymalną możliwą liczbę to co zrobić?),
  • używanie STLa - wolno czy nie? Tam czasem pisze, żeby nie używać dodatkowych funkcji, ale czy to znaczy, że nie mogę użyć max(a, b), min(a, b), vectora, pairów, czy tylko nie mogę użyć czegoś w stylu sort, albo innego lower_bound,
  • każą napisać funkcję, która coś tam robi, to czy mam przyjmować wszystkie dane jako argumenty? Tablice jako referencję, wektory, czy może uznać, że są zadeklarowane globalnie?
  • jeżeli ktoś napisze kod w języku rzeczywistym to ma być on w pełni poprawny i kompilowalny, ale jak to się sprawdza? No chyba nie klepią tego do programu, prawda? Tylko się popatrzą na ten kod, nie? A może to jest jakoś rygorystycznie oceniane?
    Jest tutaj ktoś kto pisał w ostatnich latach maturę z informatyki i może się wypowiedzieć jaką konwencję przyjął do tego kodzenia na papierze? I jak was ocenili: surowo czy raczej nie?
    A i jeszcze jedno mi się przypomniało do praktycznej części: jeżeli nie jestem pewien o co dokładnie pytają w poleceniu to mogę napisać 2 możliwe interpretacje i odpowiedzi do każdej z nich? Myślicie, że to uznają, czy nie - a może zależy od sprawdzającego?
0

Najlepiej pisz w języku, którego nie używają kiepscy nauczyciele. Trafisz na gościa, który się połapie w Twoim kodzie i zrozumie, o co Ci chodziło.

2

Pisałem maturę w roku 2017, napisałem ją na 90%.

Q: Jakiego języka użyć?
A: bezwzględnie najłatwiej jest zastosować pseudokod - może on nawet przybierać postać podobną do Twojego kodu w C++. Pamiętaj, że każde niedospecyfikowanie problemu działa na Twoją korzyść, bo nie można uciąć punktów za rozwiązanie, które nie jest niezgodne z treścią. Tak więc stosuj coś, co opisuje algorytm działania, a nie faktyczną implementację (pamiętaj, aby to zaznaczyć na samym początku).

Q: jeśli nie podana zostanie maksymalna wielkość danych, a ja potrzebuje tablicy to mam napisać coś w stylu: rozmiar tablicy zależy od wielkości danych (np. każą mi posortować tablicę, a ja chcę napisać sortowanie przez zliczanie do którego potrzebuje znać maksymalną możliwą liczbę to co zrobić?)
A: nigdzie, o ile nie jest napisane inaczej, nie jest oceniana złożoność obliczeniowa Twojego rozwiązania, dlatego nie powinieneś stosować sortowania przez zliczanie - implementacja jest z pewnością łatwiejsza do zbugowania, niż proste sortowanie bąbelkowe. Natomiast odnosząc się do "mięsa" pytania, z mojego doświadczenia wynika, że takie zadania, gdzie istotne parametry są w pewien sposób "ukryte", po prostu nie występują. Oczywiście, jeśli uważasz, że jednak czegoś dowiedzieć się potrzebujesz, to chyba nic nie stoi na przeszkodzie np. sprawdzić zakres liczb w tablicy, a następnie utworzyć tablicę odpowiedniego rozmiaru (alternatywnie wektor).

Q: Używanie STLa - wolno czy nie?
A: Odpowiedź znów się sprowadza do tego, żeby jednak nie pisać w C++, a w pseudokodzie. Natomiast nie podejrzewałbym sprawdzających o wykluczanie takich funkcji jak min, czy max, szczególnie że i tak nie zalicza się ich raczej do STLa (który sam w sobie zajmuje się przede wszystkim pojemnikami i algorytmami na nich).

Q: Każą napisać funkcję, która coś tam robi, to czy mam przyjmować wszystkie dane jako argumenty? Tablice jako referencję, wektory, czy może uznać, że są zadeklarowane globalnie?
A: Możesz jak najbardziej zadeklarować je globalnie. Nikogo, zgodnie z zasadami oceniania, nie może obchodzić styl kodu, czy dobre praktyki.

Q: Mogę napisać 2 możliwe interpretacje i odpowiedzi do każdej z nich?
A: Nie, to jest proszenie siebie o kłopoty. Reguły oceniania są sztywne, a egzaminatorzy, oraz ci co później rozpatrują odwołania są raczej nieulegli. Musisz wybrać to co jest sensowniejsze.

Z teorii miałem wszystkie punkty i skończyłem ją w połowie czasu (nie warto się przejmować), natomiast z zadań, bardzo polecam się spiąć odpowiednio, ale nie żałować sobie czasu na weryfikację (przynajmniej pobieżną) wykonywanych kroków - bo zdarzy się, że coś się źle przekopiuje w Excelu i punkty magicznie znikają. Temu zawdzięczam, że mój wynik to tylko te 90%.

1 użytkowników online, w tym zalogowanych: 0, gości: 1