Sortowanie Od najmniejszej do największej CYFRY PASCAL

Witam, napisałam program/tablica w ktorym brakuje mi jeszcze jednego elementu. Polega to na tym, ze na poczatku ma poprosic o podanie pieciu ocen , nastepnie wypisac od najmniejszej do najwiekszej posrod podanych jedna pod druga, a na koncu wypisac srednia wszystkich ocen. W programie brakuje mi tego sortowania liczb w kolejnosci, gdy np. zostaje podane:3,4,1,6,2. W ktorym miejscu to umiescic i jak to ma wygladac? Program wyglada nastepująco:

program tablica;

uses crt;

var ocena:array[1…5]of byte;

i:byte;

suma:byte;

begin

clrscr;

for i:1 to 5 do

begin

write(‘Podaj ocene ’ ,i,’: ');

readln(ocena_);_

end;

for i:=1 to 5 do writeln(ocena_);_

for i:=1 to 5 do

suma:=suma+ocena_;_

write('srednia ', suma/5:1:2);

repeat until keypressed;

end.

Poszukaj w google: “algorytmy sortowania”.

program sortowanie;

var ocena: array[1..5] of byte;

  i, j, temp, suma: Byte;

begin

  for i:= 1 to 5 do begin

    write('Podaj ocene ' ,i,': ');

    readln(ocena[i]);

  end;

  for i:= 1 to 4 do

   for j:= 5 downto i+1 do

    if ocena[j-1] > ocena[j] then begin

      temp:= ocena[j];

      ocena[j]:= ocena[j-1];

      ocena[j-1]:= temp;

    end;

  for i:= 1 to 5 do writeln(ocena[i]);

  suma:= 0;

  for i:= 1 to 5 do suma:= suma + ocena[i];

  write('srednia ', suma/5:1:2);

  readln;

end.

Zastosowany tu algorytm to sortowanie bąbelkowe. Polega ono na porównywaniu kolejno sąsiadujących ze sobą dwóch elementów tablicy i ewentualnej zamianie ich miejscami, jeśli nie są uporządkowane (w naszym przypadku rosnąco).

Jest to algorytm prosty w implementacji oraz łatwy do zrozumienia, ale generalnie jest to… bardzo zły algorytm sortujący

Sortowanie bąbelkowe to algorytm mało efektywny oraz czasochłonny, który zupełnie nie nadaje się do sortowania dużych tablic

… ale do posortowania tablicy pięcioelementowej jak najbardziej :slight_smile:

Witam.

Chciałabym się poradzić, bo mam do napisania program o owej treści :

"Napisz program, który wykona sortowanie 3 wprowadzonych przez użytkownika liczb, przy pomocy instrukcji “if else” "

Kompletnie nie wiem jak to zrobić, czy ktoś byłby w stanie wytłumaczyć mi na czym to dokładnie polega i jak to zrobić.

Nie potrzebuje gotowca, lecz potrzebuje to zrozumieć, żeby umieć samemu napisać, bo w szkole nie bardzo zrozumiale wytłumaczono…

Pozdrawiam i z góry dziękuję :wink:

Czekam na odpowiedź ;-*