Ustawienie liczb rosnąco/malejąco

0

mam pytanie zrobiłem program losujący 3 liczby z przedziału ale nie umiem posortować wyników przynajmniej mi nie wychodzi i chciałem się zapytać jak to powinno wyglądać to jest moja wersja

begin
   randomize;
   writeln('Podaj poczatek przedzialu');
   readln(m);
   writeln('Podaj koniec przedzialu');
   readln(n);
   a:=random(n-m)+m;
   writeln(a);
   b:=random(n-m)+m;
   writeln(b);
   c:=random(n-m)+m;
   writeln(c);
   begin

if(a > b) and (b > c) then
writeln(a,b,c)
else
if(b > a) and (a > c) then
writeln(b,a,c)
else
if(c > b) and (b > a) then
writeln(c,b,a)
else
if(c > a) and (a > b) then
writeln(c,a,b)
else
if(b > a) and (a > c) then
writeln(b,a,c)
else
if(b > c) and (c > a) then
writeln(b,c,a)
   end;
   readln;

end.

dodanie znacznika <code class="pascal"> - @furious programming

0

Spróbuj dla 50, 100 i N-liczb.

0

jestem dopiero początkujący bo na studiach się tego uczę i niezbyt rozumiem tego mógłbyś mi to rozpisać jak to w programie wygląda ?

1
if (a > b) and (a > c) and (b > c) then
  Write(a, ' ', b, ' ', c)
else
  if (b > a) and (b > c) and (a > c) then
    Write(b, ' ', a, ' ', c)
  else
    if (c > a) and (c > b) and (a > b) then
      Write(c, ' ', a, ' ', b)
    else
      Write(c, ' ', b, ' ', a);

Do takich rzeczy powinieneś zadeklarować sobie macierz, do niej zapisywać wylosowane liczby oraz skorzystać z popularnych algorytmów sortujących; W Twoim przypadku najłatwiej będzie łyknąć sortowanie bąbelkowe;

PS: Wątki dotyczące podstaw zakładamy w dziale Newbie, gdzie ten wątek przenoszę.

0

dzieki wielkie!

1
    program ideone;
    Uses math;
    var
      a,b,c: integer;
      m1, m2, m3: integer;
    begin
      a := 5;
      b := 1;
      c := 0;
      writeln(a,',',b,',',c);
      m1 := Min(a, Min(b, c));
      m3 := Max(a, Max(b, c));
      m2 := a + b + c - m1 - m3;
      writeln(m1,',',m2,',',m3);
    end.

http://ideone.com/IPIVu9

1 użytkowników online, w tym zalogowanych: 0, gości: 1