Program w pascalu do sortowania trzech liczb

Sowa
Użytkownik
Użytkownik
Posty: 85
Rejestracja: 9 lip 2006, o 23:04
Płeć: Mężczyzna
Lokalizacja: Kowary / Wrocław
Podziękował: 10 razy

Program w pascalu do sortowania trzech liczb

Post autor: Sowa »

Potrzebuje napisać program, który spyta użytkownika o trzy dowonle liczby a potem za pomocą zamiany wartości zmiennych uszereguje je od najmniejszej do najwięszej. Próbowałem sam to zrobic i metodą prób i błędów udało mi się zrobić, żeby działało dla dwóch liczb. Dla trzech już ciężko. Najważniejsze żeby było przez zamianę wartości zmiennyc, a zmiennych było cztery (A,B,C,V)

z góry dzięki za pomoc
Awatar użytkownika
michal_z
Użytkownik
Użytkownik
Posty: 30
Rejestracja: 14 sty 2006, o 15:17
Płeć: Mężczyzna
Lokalizacja: małopolska
Pomógł: 4 razy

Program w pascalu do sortowania trzech liczb

Post autor: michal_z »

Porównujesz A i B, jeśli A>B, zamieniasz wartości. Porównujesz B i C. Jeśli B>C, zamieniasz wartości. Porównujesz A i B. Jeśli A>B, zamieniasz wartości. Koniec. (zamiany wartości dwóch zmiennych dokonujesz przy pomocy zmiennej pomocniczej V)
spajder
Użytkownik
Użytkownik
Posty: 735
Rejestracja: 7 lis 2005, o 23:56
Płeć: Mężczyzna
Lokalizacja: Łódź
Podziękował: 2 razy
Pomógł: 133 razy

Program w pascalu do sortowania trzech liczb

Post autor: spajder »

dawno w Pascalu nie pisałem, a nie mam kompilatora przy sobie, więc mogą być drobne błędy:

Kod: Zaznacz cały

procedure liczby(var A,B,C:integer);
var V:integer;
begin
 Write('Podaj pierwsza liczbe: ');
 ReadLn(A);
 Write('Podaj druga liczbe: ');
 ReadLn(B);
 Write('Podaj trzecia liczbe: ');
 ReadLn(C);
 if(A>B)then 
  begin
   V:=A;
   A:=B;
   B:=V;
  end;
 if(B>C) then 
  begin
    V:=B;
    B:=C;
    C:=V;
    if(A>B)then begin
     V:=A;
     A:=B;
     B:=V;
    end;
  end;
end;
jest to prościutki algorytm działający dla 3 liczb. Jeśli chcesz podać więcej liczb lub nawet uogólnić to na ich nieokreśloną liczbę to lepiej skorzystać z tablic i poszukać czegoś o metodach sortowanie (najprosztsze jest chyba sortowanie bąbelkowe)
Awatar użytkownika
Ziom Ziomisław
Użytkownik
Użytkownik
Posty: 255
Rejestracja: 12 sty 2006, o 21:35
Płeć: Mężczyzna
Lokalizacja: I LO Inowrocław
Pomógł: 20 razy

Program w pascalu do sortowania trzech liczb

Post autor: Ziom Ziomisław »

Proponuje sortowanie metodą bąbelkową - prosto i uniwersalnie.
Tia widze, że nie tylko ja ...
Sowa
Użytkownik
Użytkownik
Posty: 85
Rejestracja: 9 lip 2006, o 23:04
Płeć: Mężczyzna
Lokalizacja: Kowary / Wrocław
Podziękował: 10 razy

Program w pascalu do sortowania trzech liczb

Post autor: Sowa »

michal_z pisze:Porównujesz A i B, jeśli A>B, zamieniasz wartości. Porównujesz B i C. Jeśli B>C, zamieniasz wartości. Porównujesz A i B. Jeśli A>B, zamieniasz wartości. Koniec. (zamiany wartości dwóch zmiennych dokonujesz przy pomocy zmiennej pomocniczej V)
wiem jak to w teorii ma być, ale w praktyce nie wiem i dlatego tu pytam

dzięki Spider, sprawdzę czy działa, jakby co to dam tu poprawioną wersję
ODPOWIEDZ