Prezentacja multimedialna
Zadanie 2
W pewnej miejscowości ma odbyć się konkurs strzelecki. Do wzięcia udziału zgłosiło się 50 osób. Dane każdego uczestnika zostały zapisane w pliku nazwiska.txt
. W każdym wierszu znajduje się nazwisko innego uczestnika w kolejności zgłoszeń.
Zadanie 2.1
Po zamknięciu listy zgłoszeń postanowiono, że uczestnicy zostaną podzieleni na pięć dziesięcioosobowych grup, oznaczanych liczbami 0, 1, 2, 3, 4. O przynależności uczestnika do danej grupy decyduje kolejność na liście zgłoszeń; do grupy k przydzieleni są zawodnicy o numerach , gdzie i to kolejne liczby naturalne wraz z zerem. Dla przykładu grupa o numerze 1 zawiera pierwszą, szóstą, jedenastą i szesnastą osobę na liście. W ramach grup uczestnicy będą wywoływani do oddania strzałów zgodnie z porządkiem leksykograficznym.
Nazwiska na liście nie powtarzają się, natomiast mogą być różnej długości.
Plik nazwiska.txt
zawiera 50 nazwisk uczestników turnieju.
Używając wybranego języka (C++, Java, Python), napisz program, który przyporządkuje uczestników do odpowiednich grup i ustali prawidłową kolejność w grupach. Wyniki zapisz do pliku kolejnosc.txt
.
Do oceny oddajesz:
plik
kolejnosc.txt
zawierający odpowiedź (nazwiska uczestników posortowane leksykograficznie w ramach poszczególnych grup; każda grupa powinna być oddzielona od siebie pojedynczą pustą linią)plik(i) z komputerową realizacją zadania (kodem programu)
Rozwiązanie przedstawimy w postaci pseudokodu, ponieważ na egzaminie maturalnym można korzystać z wybranego języka programowania: C++, Java lub Python.
Przedstaw rozwiązanie zadania w postaci programu napisanego w wybranym języku (C++, Java lub Python). Zadbaj o prawidłowe wczytanie danych z pliku tekstowego. Rozwiązanie zadania znajdziesz w osobnym pliku tekstowym pod omówieniem pseudokodu.
Rozwiązanie
Odpowiedź
Rozwiązanie zadania dla danych zapisanych w pliku nazwiska.txt
:
Dodaj do swojego programu komentarze tak, żeby był zrozumiały dla osoby, która nie potrafi programować.