Darmowe konto pozwoli wrócić do niego później.
Polecenie
Zadanie 6. Statek
Statek towarowy "Kormoran" pływał po Morzu Śródziemnym pomiędzy dziesięcioma portami, przewożąc pięć różnych rodzajów towarów (T1, T2, … , T5). Statek wypływał z portu zawsze tego samego dnia, w którym do tego portu przypłynął.
W pliku statek.txt podano informacje o kursach wykonanych przez statek w okresie od 2016-01-01 do 2018-12-18. W każdym wierszu, oddzielone znakiem tabulacji, podane są:
data – data przebywania statku w porcie (w formacie rrrr-mm-dd),
port – nazwa portu,
towar – rodzaj towaru,
Darmowe konto pozwoli wrócić do niego później.
Z/W – informacja, czy to był załadunek (Z) czy wyładunek (W),
ile ton – informacja, jaka masa (w tonach) towaru była wyładowana/załadowana,
cena za tone w talarach – cena towaru w talarach za tonę.
Wykorzystaj dostępne narzędzia informatyczne i podaj odpowiedzi do zadań 6.1.–6.5. Odpowiedzi zapisz w pliku wyniki6.txt, poprzedzając każdą z nich numerem odpowiedniego zadania.
Zadanie 6.5.
Kapitan przy załadunku płacił za towar, a przy wyładunku otrzymywał za niego zapłatę.
a) Przyjmij, że kapitan przed pierwszym rejsem miał w kasie 500 000 talarów, a następnie:
• oblicz, ile talarów miał 18 grudnia 2018 roku po zakończeniu wszystkich transakcji
• znajdź dzień, w którym po wypłynięciu z portu stan kasy kapitana był największy – podaj ten dzień oraz stan kasy kapitana tego dnia.
b) Podaj, ile minimum talarów powinien mieć kapitan przed pierwszym rejsem, aby mógł wykonać wszystkie transakcje, tzn. zapłacić za każdy załadunek, każdego dnia.
a) Stan kasy kapitana 18 grudnia 2018 roku i dzień z największym stanem kasy po wypłynięciu z portu.
b) Minimum talarów potrzebnych przed pierwszym rejsem.
Algorytm:
a) 1. Wczytaj plik statek.txt
2. Zaakumuluj całość: przy załadunku odejmij (ile ton * cena), przy wyładunku dodaj
3. Stan początkowy: 500 000 talarów
4. Oblicz stan na 2018-12-18
5. Śledź maksymalny stan po każdym wypłynięciu
6. Wypisz finalny stan i dzień z maksimum
b) 1. Śledzić stan kasy chronologicznie dla każdego załadunku
2. Znaleźć najniższy osiągnięty stan (przed którym trzeba mieć dodatkowe środki)
3. Wypisz minimum: |najniższy stan| jeśli ujemny, lub 0 jeśli zawsze dodatni
prawidłowo obliczony stan kasy na koniec, znalezione maksimum po wypłynięciu i minimum talarów na początek.
rozwiązanie zawiera błędy w śledzeniu transakcji lub w jednej z trzech części.
rozwiązanie zawiera istotne błędy, ale pokazuje ogólne zrozumienie.
częściowe rozwiązanie, głównie niepoprawne.
brak rozwiązania lub całkowicie niepoprawne.
Ocena według schematu punktowania CKE, zwykle w 15–30 s
Dowiedz się, ile punktów naprawdę zdobywasz. Zrób zdjęcie kartki albo wklej odpowiedź: Maturownik+ porówna ją ze schematem punktowania, policzy punkty i wytłumaczy, gdzie i dlaczego je tracisz.