Zadanie 2. Stacja pogodowa

Bajtolandia ma stację pogodową oraz system do monitorowania pogody. Stacja pogodowa pod koniec każdego tygodnia tworzy raport w postaci pliku tekstowego, w którym znajdują się 24 wiersze (odpowiadające poszczególnym godzinom doby, począwszy od 00:00) zawierające po 5 liczb naturalnych z przedziału <0; 100> (liczby te odpowiadają poszczególnym dniom tygodnia). Są to wyniki pomiarów temperatury (w stopniach Celsjusza) z każdej kolejnej godzinie poszczególnych dni. 

Przykład 1

Przykładowa pierwsza linia:

Linia 1. 5 10 18 13 15.

Oznacza, że o godzinie 00:00 w danym tygodniu w poniedziałek było 5 stopni, we wtorek 10, w środę 18, w czwartek 13, a w piątek 15.

W raporcie dla 4. dnia maszyna zrobiła błąd. Wyniki temperatur zapisała nie w stopniach Celsjusza, tylko w stopniach Fahrenheita, a dodatkowo zrobiła to w odwrotnej kolejności (pierwsza wartość oznacza temperaturę w stopniach Fahrenheita z godziny 23:00, a ostatnia – temperaturę w stopniach Fahrenheita z godziny 00:00).

Poniżej znajduje się plik z temperaturami z pewnego tygodnia.

RB3e9FuC0F87J

Przycisk do pobrania pliku TXT z treścią zadania.

Plik TXT o rozmiarze 364.00 B w języku polskim
Polecenie 1

Po zapoznaniu się z prezentacją napisz program, który wczyta dane z pliku temperatury.txt, poprawi błędy maszyny, czyli zamieni wartości temperatur z dnia 4. ze skali Fahrenheita na stopnie Celsjusza, zaokrągli je w dół do liczby całkowitej oraz zapisze pomiary dla każdego dnia uporządkowane rosnąco od godziny 00:00, każdy w osobnym wierszu w plikach dzien_1.txt, dzien_2.txt, dzien_3.txt, dzien_4.txtdzien_5.txt.

Przykład 2

Dla pomiarów z 4. dnia plik dzien_4.txt powinien zawierać 24 wiersze z następującymi danymi:

Linia 1. 32. Linia 2. 30. Linia 3. 25. Linia 4. 13. Linia 5. 31. Linia 6. 21. Linia 7. 22. Linia 8. 9. Linia 9. 26. Linia 10. 32. Linia 11. 23. Linia 12. 37. Linia 13. 27. Linia 14. 37. Linia 15. 33. Linia 16. 9. Linia 17. 15. Linia 18. 32. Linia 19. 14. Linia 20. 4. Linia 21. 19. Linia 22. 21. Linia 23. 21. Linia 24. 21.

Do konwersji temperatur wykorzystaj wzór:

stopnie Celsjusza=stopnie Fahrenheita-32×59
Przykład 3

80 stopni Fahrenheita to 26,6666666667 stopni Celsjusza:

stopnie Celsjusza=stopnie Fahrenheita-32×59
stopnie Celsjusza=26,6666666667

Jednak zgodnie z treścią zadania, wynik ten powinien zostać zaokrąglony w dół do liczby całkowitej, zatem 80 stopni Fahrenheita daje 26 stopni Celsjusza.

Do oceny oddajesz:

  • pliki dzien_1.txt, dzien_2.txt, dzien_3.txt, dzien_4.txt, dzien_5.txt, które zawierają 1 wiersz z uporządkowanymi rosnąco od godziny 00:00, oddzielonymi 1 znakiem spacji, pomiary temperatury w stopniach Celsjusza dla danego dnia,

  • plik(i) z komputerową realizacją zadania (kodem programu).

Rozwiązanie przedstawimy w postaci pseudokodu, ponieważ na egzaminie maturalnym mamy do wyboru jeden z trzech języków programowania: C++, Java lub Python. Odpowiedź do zadania (pliki zawierające zestawienia temperatur) dla danych z pliku temperatury.txt znajdziesz pod prezentacją.

Rozwiązanie

1
Polecenie 2
R19cmtTRv2DXM1
Wybierz jedno nowe słowo poznane podczas dzisiejszej lekcji i ułóż z nim zdanie.
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.

Odpowiedź:

Archiwum zawierające wynikowe pliki z pomiarami dla danych zawartych w pliku tekstowym temperatury.txt:

Ro7jbYNhVmR9P

Przycisk do pobrania pliku ZIP z treścią zadania.

Plik ZIP o rozmiarze 924.00 B w języku polskim