From MJanik
            (Difference between revisions)
                                                
            
			
			
			
			
		
		 | 
		   | 
		
| (One intermediate revision not shown) | 
| Line 1: | 
Line 1: | 
| - | 
  |   | 
|   | Proszę napisać program, który wczyta do tablicy typu <code>double</code> wyniki pomiaru czasu uzyskane przez zawodników PZU Maratonu Warszawskiego 2016 (w minutach).    |   | Proszę napisać program, który wczyta do tablicy typu <code>double</code> wyniki pomiaru czasu uzyskane przez zawodników PZU Maratonu Warszawskiego 2016 (w minutach).    | 
|   | * Plik z wynikami: [http://www.if.pw.edu.pl/~majanik/files/PP/wyniki.txt wyniki.txt] (w pierwszej linijce pliku znajduje się ilość wyników)  |   | * Plik z wynikami: [http://www.if.pw.edu.pl/~majanik/files/PP/wyniki.txt wyniki.txt] (w pierwszej linijce pliku znajduje się ilość wyników)  | 
| Line 11: | 
Line 10: | 
|   | Program powinien działać w pętli do momentu podania przez użytkownika opcji kończącej program.<br>  |   | Program powinien działać w pętli do momentu podania przez użytkownika opcji kończącej program.<br>  | 
|   | <br>  |   | <br>  | 
| - | '''Uwaga 1!''' Aby zrealizować wypisanie najlepszych i najgorszych wyników, musimy po wczytaniu tablicę '''posortować'''. Jak posortować tablicę? Pokazuje to poniższy przykład algorytmu, tzw. "sortowania przez wybór" (selection sort):  | + | '''Uwaga 1!''' Aby zrealizować wypisanie najlepszych i najgorszych wyników, musimy po wczytaniu tablicę '''posortować'''. Należy zastosować poniższy przykład algorytmu, tzw. "sortowania przez wybór" (selection sort):  | 
|   |  |   |  | 
|   | Lista kroków (przykład dla n-elementowej tablicy):<br>  |   | Lista kroków (przykład dla n-elementowej tablicy):<br>  | 
| Line 17: | 
Line 16: | 
|   | '''K02:'''	<code>pmin := j</code> // ustaw wartość zmiennej <code>pmin</code> na <code>j</code><br>  |   | '''K02:'''	<code>pmin := j</code> // ustaw wartość zmiennej <code>pmin</code> na <code>j</code><br>  | 
|   | '''K03:'''	'''Dla''' <code>i= j+1,  j+2,..., n</code>: '''jeśli''' <code>tablica[i] < tablica[pmin]</code>, '''to''' <code> pmin:= i</code><br>  |   | '''K03:'''	'''Dla''' <code>i= j+1,  j+2,..., n</code>: '''jeśli''' <code>tablica[i] < tablica[pmin]</code>, '''to''' <code> pmin:= i</code><br>  | 
| - | '''K04:'''    Zamień <code>tablica[i]</code> z <code>tablica[pmin]</code><br>  | + | '''K04:'''    Zamień <code>tablica[j]</code> z <code>tablica[pmin]</code><br>  | 
|   | '''K05:'''	Zakończ  |   | '''K05:'''	Zakończ  | 
|   |  |   |  | 
Latest revision as of 08:06, 10 April 2018
Proszę napisać program, który wczyta do tablicy typu double wyniki pomiaru czasu uzyskane przez zawodników PZU Maratonu Warszawskiego 2016 (w minutach). 
-  Plik z wynikami: wyniki.txt (w pierwszej linijce pliku znajduje się ilość wyników)
 
Następnie, po utworzeniu tablicy i jej posortowaniu (patrz Uwaga 1), użytkownikowi ukazuje się menu użytkownika, w którym do wyboru powinny być następujące opcje (menu wyświetla się za każdym razem po zrealizowaniu danej opcji):
-  Wypisanie najlepszego czasu
 -  Wypisanie najgorszego czasu
 -  Wypisanie średniego czasu uzyskanego przez wszystkich zawodników
 -  Wypisanie zadanej liczby najlepszych wynikow (wymagana posortowana tablica)
 -  (Dodatkowo) Wypisanie zadanej liczby najgorszych wynikow (wymagana posortowana tablica)
 -  Zakończenie programu
 
Program powinien działać w pętli do momentu podania przez użytkownika opcji kończącej program.
Uwaga 1! Aby zrealizować wypisanie najlepszych i najgorszych wyników, musimy po wczytaniu tablicę posortować. Należy zastosować poniższy przykład algorytmu, tzw. "sortowania przez wybór" (selection sort):
Lista kroków (przykład dla n-elementowej tablicy):
K01:	Dla j = 1,2,...,n-1: wykonuj K02...K04 
K02:	pmin := j // ustaw wartość zmiennej pmin na j
K03:	Dla i= j+1,  j+2,..., n: jeśli tablica[i] < tablica[pmin], to  pmin:= i
K04:    Zamień tablica[j] z tablica[pmin]
K05:	Zakończ
Uwagi o stylu: Pamiętamy o wcięciach, nawiasach, i generalnie o uporządkowanym kodzie. Kod powinien być tak napisany, by był zrozumiały dla osoby go czytającej.
Na koniec wysyłamy program na mój adres e-mail: majanik@if.pw.edu.pl