Podstawy Programowania.
Przykładowy zestaw zadań II
Poniższe uwagi dotyczą wszystkich programów
Program wczytuje dane z pliku (sprawdzanie poprawności danych w pliku) i zapamiętuje je na liście jednokierunkowej (lub dwukierunkowej). Program powinien umożliwiać:
- sortowanie danych wg. podanego kryterium (jeśli wartości dla pierwszego kryterium są takie same to należy posortować wg. drugiego kryterium);
- wyszukiwanie danych wg. podanego kryterium;
- edycję danych lub wstawienie nowego lub usunięcie elementu;
- zapis zmienionych danych do pliku.
Operacje sortowania, wyszukiwania oraz edycji danych maja sie odbywać na liście jednokierunkowej!
Kryteria oceny
- poprawne wczytanie danych wejściowych/ zapisywanie
- tworzenie listy, kasowanie, wstawianie, edycja, wyszukiwanie elementów na liście jedno- lub dwu-kierunkowej
- sortowanie poprzez zamiane wskazników
- zabezpieczenia przed niepoprawnymi operacjami, wyjątkami
- znajomość zagadnienia i programu
Cztery dodatkowe elementy, oddzielnie oceniane
- biblioteka DLL (0-1,5 pkt)
- minimum 3 funkcje wydzielone w logiczny sposób
- przesyłanie parametrów do/z biblioteki
- stopień skomplikowania funkcji (funkcje nie mogą być proste, typu dodawanie 2 liczb)
- znajomość zagadnienia i kodu
- własny komponent (0-1,5 pkt)
- oryginalność komponentu
- znajomość zagadnienia i kodu
- uruchamianie tylko jednej wersji programu (0-1 pkt)
- znajomość zagadnienia i kodu
- przeciążanie operatorów (0-1 pkt)
- minimum 3 różne operatory
- znajomość zagadnienia i kodu
P r z y k ł a d o w e     Z a d a n i a
- Baza fabryk produkujacych meble (max. 15 fabryk).
- fabryka moze produkowac meble z 10 różnych kategorii (wiecej niz 1 kategoria): stoly, krzesla, wypoczynki, kuchnie, ratan wypoczynki, fotele, komandor, szafy, meble lazienkowe, wieszaki do przedpokoju (zakladamy ze np. stol ze sklepu A nie rozni sie wygladem od stolu ze sklepu B, ale moze roznic sie cena lub czasem oczekiwania)
- kazda fabryka przechowuje informacje ile w danej chwili znajduje sie u niej mebli, dla kazdej z kategorii, cene kazdego z produktow oraz czas oczekiwania na wykonanie nowych mebli (moze byc inny dla roznych mebli), jesli nie znajduja sie one na stanie.
- miejscowosc kazdej z fabryk.
Program wczytuje dane i umieszcza je na liście jednokierunkowej. Sortowanie i wyszukiwanie danych wg. kryterium: nazwa fabryki, miejscowość. Program ma umożliwiać edycję dowolnego elementu, wstawienie nowego lub usunięcie i zapis zmienionych danych do pliku.
- Ranking samochodow.
- max 10 marek samochodow, po 5 typow dla kazdej marki oraz przynaleznosc samochodu do klasy (A,B,C,D,E)
- dla kazdego samochodu: cena, max predkosc, liczba cylindrow, liczba KM, zuzycie paliwa, czas przyspieszenia do 100, ABS, wspomaganie kierownicy, poduszki powietrzne, poj. silnika
Program wczytuje dane i umieszcza je na liście jednokierunkowej. Sortowanie i wyszukiwanie danych wg. kryterium: marka samochodu, typ samochodu. Program ma umożliwiać edycję dowolnego elementu, wstawienie nowego lub usunięcie i zapis zmienionych danych do pliku.
- Gra w statki
Graczy moze byc max. 10. Kazdy gracz moze rozegrac 5 partii. Kazda zakonczona partia opisana jest w pliku poprzez:
- 2 nazwiska roznych graczy
- 2 plansze
Program wczytuje dane i umieszcza je na liście jednokierunkowej. Sortowanie i wyszukiwanie danych wg. kryterium: nazwisko pierwszego gracza, nazwisko drugiego gracza. Program ma umożliwiać edycję dowolnego elementu, wstawienie nowego lub usunięcie i zapis zmienionych danych do pliku.
- Test proszkow do prania (max 10 roznych proszkow)
- nazwa proszku
- temperatura prania (30,60,90 stopni- podajemy maksymalna wartosc)
- srednie zuzycie proszku dla prania w gramach
- cena za pojemnik 3 kg
- lista 15 plam (np. buraki, czekolada, jajko, mleko), które proszek potrafi wyczyścić lub nie. Każda plama o określonym stopniu trudności w 3 - stopniowej skali. Lista plam jest stala dla wszystkich proszkow.
Program wczytuje dane i umieszcza je na liście jednokierunkowej. Sortowanie i wyszukiwanie danych wg. kryterium: nazwa proszku. Program ma umożliwiać edycję dowolnego elementu, wstawienie nowego lub usunięcie i zapis zmienionych danych do pliku.
- Gielda - analiza zmiany cen akcji w miesiącu
Dla kazdego dnia, kiedy giedła jest otwarta przechowywane sa informacje:
- nazwa akcji (max 15)
- data oraz cena jednostki w ciagu dnia
Program wczytuje dane i umieszcza je na liście jednokierunkowej. Sortowanie i wyszukiwanie danych wg. kryterium: nazwa akcji, data. Program ma umożliwiać edycję dowolnego elementu, wstawienie nowego lub usunięcie i zapis zmienionych danych do pliku.
- Analiza programu TV
W pliku znajduje sie tygodniowy program TV dla jednego kanalu telewizyjnego (nazwa programu, data, oraz godzina). Dziennie moze byc maksymalnie 10 programow podzielonych na 3 kategorie wiekowe (BO, 12, 18) oraz okreslony rodzaj programu (wiadomosci, film, dokument, teatr, bajka, rozrywka).
Program wczytuje dane i umieszcza je na liście jednokierunkowej. Sortowanie i wyszukiwanie danych wg. kryterium: nazwa programu, data. Program ma umożliwiać edycję dowolnego elementu, wstawienie nowego lub usunięcie i zapis zmienionych danych do pliku.
- Organizacja koncertow
Kazdy koncert (max. 50) zdefiniowany jest poprzez:
- datę koncertu
- zespół
- miejscowość (Poznań, Warszawa, Wrocław, Szczecin, Kraków)
- cenę biletu
- liczbę sprzedanych biletów
- koszt imprezy
Program wczytuje dane i umieszcza je na liście jednokierunkowej. Sortowanie i wyszukiwanie danych wg. kryterium: nazwy zespołu, miejscowości. Program ma umożliwiać edycję dowolnego elementu, wstawienie nowego lub usunięcie i zapis zmienionych danych do pliku.
- Ankieta poparcia dla partii rządzącej
W pliku znajduja sie wyniki przeprowadzonej niedawno telefonicznej ankiety poparcia dla partii rządzącej.
- czy popiera partie (tak, nie)
- płeć (K, M)
- miejscowość (5 kategorii licznosci mieszkanców)
- wyksztalcenie (podstawowe, srednie, wyzsze)
- wiek (18-25, 26-35, 36-45, 46-60, pow.60)
- czy glosowal(a) na te partie w wyborach (tak, nie)
Program wczytuje dane i umieszcza je na liście jednokierunkowej. Sortowanie i wyszukiwanie danych wg. kryterium: wykształcenie, wiek. Program ma umożliwiać edycję dowolnego elementu, wstawienie nowego lub usunięcie i zapis zmienionych danych do pliku.
- Książka telefoniczna
W pliku przechowywane są informacje o numerach telefonów abonentów Telefonii komórkowej (max 100 abonentów):
- nazwisko, imię abonenta
- adres zamieszkania
- numer telefonu
Program wczytuje dane i umieszcza je na liście jednokierunkowej. Sortowanie i wyszukiwanie danych wg. kryterium: nazwisko, numer telefonu. Program ma umożliwiać edycję dowolnego elementu, wstawienie nowego lub usunięcie i zapis zmienionych danych do pliku.