Materiały pomocnicze, rozwiązania zadań i arkusze egzaminacyjne – wszystko, czego potrzebujesz, aby zdać egzamin i rozwijać swoje umiejętności programistyczne.
UWAGA: katalog z rezultatami pracy oraz płytę należy opisać numerem, którym został podpisany arkusz, czyli numerem PESEL lub w przypadku jego braku numerem paszportu.
Wykonaj aplikację konsolową oraz mobilną według wskazań. Wykonaj dokumentację do aplikacji konsolowej, zgodnie z opisem w części III instrukcji do zadania. W tym celu zaloguj się na konto Egzamin bez hasła.
Utwórz folder i nazwij go swoim numerem. W folderze utwórz podfoldery: konsola, mobilna, dokumentacja. Po wykonaniu każdej aplikacji, jej pełny kod (cały folder projektu) spakuj do archiwum. Następnie pozostaw w folderze jedynie pliki źródłowe, których treść modyfikowałeś, plik uruchomieniowy, jeśli jest to możliwe oraz spakowane archiwum.
Część I. Aplikacja konsolowa
Napisz program implementujący algorytm przeszukiwania tablicy z wartownikiem. Opis algorytmu znajduje się w ramce.
By odnaleźć element x podejmiemy następujące kroki:
By odnaleźć element x podejmiemy następujące kroki:
1. na końcu tablicy (pod indeksem n+1) wstawimy szukany element x – będzie to nasz wartownik, w przypadku, gdy nie znajdziemy go nigdzie indziej w tablicy, zabezpieczy nas on przed wyjściem poza tablicę,
2. przejdziemy po kolejnych elementach tablicy, tak długo aż nie znajdziemy szukanego elementu,
3. w momencie znalezienia szukanego elementu x sprawdzamy, który jest to element tablicy? Jeżeli jest to ostatni element tablicy (n+1) to trafiliśmy na naszego wartownika i oznacza to, że w tablicy nie było szukanego elementu x, w przeciwnym razie element x został odnaleziony. „
Założenia do programu:
Program wykonywany w konsoli.
Zastosowany obiektowy język programowania zgodny z zainstalowanym na stanowisku egzaminacyjnym: C++ lub C#, lub Java, lub Python.
Przeszukiwana jest minimum 50 elementowa tablica liczb całkowitych wypełniona wartościami pseudolosowymi z zakresu od 1 do 100.
Wyszukiwane jest pierwsze wystąpienie elementu w tablicy.
Wypełnianie tablicy i przeszukiwanie jest realizowane w oddzielnych funkcjach / metodach. Funkcja przeszukująca zwraca indeks odnalezionego elementu.
Wartość do wyszukania jest pobierana z klawiatury.
Po przeszukaniu tablicy na ekranie wyświetlana jest zawartość tablicy (liczby oddzielone przecinkami) oraz indeks, pod którym odszukano wartość lub w przypadku jej braku – stosowny komunikat.
Program powinien podejmować zrozumiałą komunikację z użytkownikiem, dane wprowadzane i wyprowadzane powinny być opatrzone zrozumiałym opisem.
Program powinien być zapisany czytelnie, z zachowaniem zasad czystego formatowania kodu, należy stosować znaczące nazwy zmiennych i funkcji.
Program główny powinien zawierać test działania aplikacji.
Podejmij próbę kompilacji i uruchomienia aplikacji. Informacje dotyczące dokumentacji i zrzutów ekranowych umieszczono w części III zadania.
Kod aplikacji przygotuj do nagrania na płytę. W podfolderze konsola powinno znaleźć się archiwum całego projektu o nazwie konsola.zip, plik z kodem źródłowym programu oraz plik uruchomieniowy, jeżeli istnieje.
Część II. Aplikacja mobilna
Wykonaj aplikację mobilną za pomocą środowiska programistycznego dostępnego na stanowisku egzaminacyjnym oraz uruchom ją w dostępnym emulatorze systemu mobilnego. Aplikacja jest fragmentem programu do przeglądania ofert turystycznych. Do wykonania aplikacji należy wykorzystać obraz z archiwum zad1.zip znajdującego się na pulpicie konta Egzamin i zabezpieczonego hasłem: !Turystyk@
Obraz 1a. Aplikacja AndroidStudio, stan początkowy. Emulacja Nexus 5X API 29 x86.
Obraz 1b. Aplikacja MS Visual Studio, zachowanie aplikacji: 5 razy wciśnięto „POLUB”. Emulacja Android Oreo.
Na obrazie 1a przedstawiono stan po uruchomieniu aplikacji mobilnej. W zależności od zastosowanego środowiska programistycznego oraz emulowanego systemu wynik końcowy może nieznacznie się różnić od przedstawionego. Na obrazie 1b przedstawiono zachowanie aplikacji: 5 razy wciśnięto przycisk „POLUB” i w efekcie status pod przyciskami wyświetla tekst „5 polubień”.
Elementy aplikacji:
Tytuł o treści: „Domek w górach”.
Obraz o nazwie obraz.jpg wypakowany z archiwum.
Trzy przyciski o treści: „POLUB”, „USUŃ”, „ZAPISZ” umiejscowione obok siebie.
Napis o treści „0 polubień”.
Linia horyzontalna.
Napis o treści „Opis”.
Napis o treści „Odwiedź komfortowy domek w Sudetach, blisko do szlaków turystycznych”.
Działanie aplikacji:
Aplikacja implementuje licznik polubień, który w stanie początkowym aplikacji jest równy 0, następnie jego stan jest:
inkrementowany po wciśnięciu przycisku „POLUB”,
dekrementowany po wciśnięciu przycisku „USUŃ”. Licznik nie może być niższy niż 0.
Stan licznika jest wyświetlany pod przyciskami, w formie napisu „<x> polubień”, gdzie <x> oznacza aktualną wartość licznika.
Założenia aplikacji:
Interfejs użytkownika zapisany za pomocą języka znaczników wspieranego w danym środowisku (np. XAML, XML).
Zastosowany typ rozkładu liniowy wertykalny (Linear / Stack lub inny o tej idei) z zagłębionym rozkładem liniowym horyzontalnym dla przycisków.
Margines wewnętrzny górny dla całej strony lub rozkładu wertykalnego: 20 px (lub dp)
Kolor tła przycisków i rozkładu, w którym się znajdują: Teal (#008080), zgodnie z Obrazem 1a.
Kolory czcionki: biały dla przycisków oraz Gray (#808080) dla napisu „Odwiedź…”, zgodnie z Obrazem 1a.
Czcionka tytułu ma rozmiar największy spośród użytych w aplikacji.
Czcionka napisu „Opis” jest pogrubiona.
Napis o liczbie polubień jest wyrównany do prawej.
Obraz wypełnia całą szerokość strony (zależnie od zastosowanego aspektu może być automatycznie obcięty przez emulator – zobacz obraz 1b).
Linia horyzontalna jest koloru Gray (#808080), dopuszcza się również prostokąt o wysokości 1.
Aplikacja powinna być zapisana czytelnie, z zachowaniem zasad czystego formatowania kodu, należy stosować znaczące nazwy zmiennych i funkcji.
Podejmij próbę kompilacji i emulacji. Informacje dotyczące dokumentacji i zrzutów ekranowych umieszczono w części III zadania.
Kod aplikacji przygotuj do nagrania na płytę. W podfolderze mobilna powinno znaleźć się archiwum całego projektu o nazwie mobilna.zip, plik źródłowy interfejsu użytkownika (XAML lub XML) oraz plik źródłowy kodu skojarzonego z interfejsem użytkownika.
Część III. Dokumentacja aplikacji
Wykonaj dokumentację do aplikacji utworzonych na egzaminie. W kodzie źródłowym aplikacji konsolowej utwórz nagłówek funkcji przeszukującej, według wzoru zgodnie z listingiem 1. Nagłówek powinien znaleźć się w kodzie źródłowym nad funkcją. W miejscu nawiasów <> należy podać nazwę funkcji, nazwy argumentów wraz z krótkim opisem, typ zwracany wraz z krótkim opisem, krótki opis zawierający przynajmniej nazwę algorytmu. Gdy funkcja nie ma argumentów – zapisać „brak”. W miejscu autor należy podać swój numer.
UWAGA: Dokumentację umieścić w komentarzu (wieloliniowym lub kilku jednoliniowych). Znajdujący się w listingu 1 wzór dokumentacji jest bez znaków początku i końca komentarza, gdyż te są różne dla różnych języków programowania
Listing 1. Wzór dokumentacji funkcji
/******************************************************
nazwa funkcji: <tu wstaw nazwę funkcji>
argumenty: <nazwa argumentu> - <co przechowuje>
<nazwa argumentu> -<co przechowuje>
typ zwracany: <nazwa typu>, <co jest zwracane>
informacje: <opis>
autor: <numer zdającego>
*****************************************************/
Wykonaj zrzuty ekranu dokumentujące uruchomienie aplikacji utworzonych podczas egzaminu. Zrzuty powinny obejmować cały obszar ekranu monitora z widocznym paskiem zadań. Jeżeli aplikacja uruchamia się, na zrzucie należy umieścić okno z wynikiem działania programu oraz otwarte środowisko programistyczne z projektem lub okno terminala z kompilacją projektu. Jeżeli aplikacja nie uruchamia się z powodu błędów kompilacji, należy na zrzucie umieścić okno ze spisem błędów i widocznym otwartym środowiskiem programistycznym. Wykonać należy tyle zrzutów ile interakcji podejmuje aplikacja. Wymagane zrzuty ekranu:
Aplikacja konsolowa – dowolna liczba zrzutów nazwanych konsola1, konsola2 …
Aplikacja mobilna – dowolna liczba zrzutów nazwanych mobile1, mobile2 … (np. stan początkowy, po wciśnięciu przycisku polubień)
W edytorze tekstu pakietu biurowego utwórz plik z dokumentacją i nazwij go egzamin. Dokument powinien zawierać podpisane zrzuty ekranu oraz zapisane informacje:
Nazwę systemu operacyjnego, na którym pracował zdający.
Nazwy środowisk programistycznych, z których zdający korzystał na egzaminie.
Nazwy języków programowania.
Nazwa emulatora systemu mobilnego.
Zrzuty ekranu i dokument umieść w podfolderze dokumentacja.
UWAGA: Nagraj płytę z rezultatami pracy. W folderze z numerem zdającego powinny się znajdować podfoldery: konsola, mobilna, dokumentacja. W folderze dokumentacja: pliki ze zrzutami oraz plik egzamin. W folderze konsola: spakowany cały projekt aplikacji konsolowej, pliki z kodem źródłowym, opcjonalnie plik uruchomieniowy. W folderze mobilna: spakowany cały projekt aplikacji mobilnej, pliki ze źródłami interfejsu i logiki. Po nagraniu płyty sprawdź poprawność nagrania. Opisz płytę swoim numerem i pozostaw na stanowisku, zapakowaną w pudełku wraz z arkuszem egzaminacyjnym.
Czas przeznaczony na wykonanie zadania wynosi 180 minut. Ocenie będą podlegać 4 rezultaty