pawlak89 Opublikowano 6 Maja 2007 Udostępnij Opublikowano 6 Maja 2007 Mam takie zadanie na zaliczenie pierwszej klasy: Napisz program (pascal) odczytujący z pliku tekstowego ciąg liczb, sortujący go, a następnie wyświetlający posortowany ciąg na ekranie. No i mam duży problem. Bo napisać program sortujący to jest łatwo, ale jeśli ten program ma odczytywac cyfry z pliku to już jest trudniejsze. to jest kod do programu sortującego metodą bombelkową: var i,n,b,c:integer; tab:array[1..30] of integer; pomoc:integer; begin writeln('Podaj ilość liczb'); readln(n); writeln('Podawaj kolejno liczby'); for i:=1 to n do readln(tab[i]); b:=0; c:=1; while c>0 do begin inc(B); c:=0; for i:=1 to n-b do begin if tab[i] > tab[i+1] then begin pomoc:=tab[i+1]; tab[i+1]:=tab[i]; tab[i]:=pomoc; incŠ; end; end; end; for i:=1 to n do write(tab[i],', '); readln; end. a to do programu który wczytuje cyfry z pliku: USES CRT; VAR t:text; a:char; BEGIN clrscr; assign(t, 'c:\plik1.txt'); reset(t); REPEAT read(t,a); write(a); UNTIL EOF(t); close(t); readln; END. No i teraz najtrudniejsze zadanie. Jak to połączyć, żeby program czytał cyfry z pliku i wyświetlał je już posortowane od najmniejszej do największej. Prosze o pomoc. Z góry dziękuje. Używaj znacznika [ code ]. Marmot Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Marmot Opublikowano 7 Maja 2007 Udostępnij Opublikowano 7 Maja 2007 Na szybko wymyślone: uses crt; var i,n,b,c:integer; tab:array[1..99] of integer; pomoc:integer; begin clrscr; assign(t, 'c:\plik1.txt'); reset(t); REPEAT read(t,a); n:=a; tab[a]:=t; UNTIL EOF(t); close(t); b:=0; c:=1; while c>0 do begin inc(B); c:=0; for i:=1 to n-b do begin if tab[i] > tab[i+1] then begin pomoc:=tab[i+1]; tab[i+1]:=tab[i]; tab[i]:=pomoc; inc(c); end; end; end; for i:=1 to n do write(tab[i],', '); readln; end. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się