zadatak je: učitati podatke o učenicima(ime,prezime, godine. visinu i težinu) te ih sortirati po: abecednom redu, prema tezini, visini i starosti. problem je nastao kod sortiranja abecednim redom (neki divlji rezultati se ispisuju i nemogu dokučiti kako da ispiše imena i prezimena učenika kod sortiranja po težini visini i starosti. Bio bih jako zahvalan ako bi netko podjelio sa mnom ideju kako bi se mogao rješiti ovaj zadatak. :D
Pascal - sortiranje podataka o učenicima
- poruka: 3
- |
- čitano: 2.705
- |
- moderatori:
Lazarus Long, XXX-Man, vincimus
- +/- sve poruke
- ravni prikaz
- starije poruke gore
Ne razumijem problem. Kakvu strukturu imas? Trebao bi imati jedan record koji ce sadrzavati sve podatke o jednom uceniku i onda jedan vektor tih recorda, koji ces sortirati. I onda kako god da ti ispremjesas te recorde, uvijek ce ostati povezani svi podaci jednog ucenika.
Znaci, record bi trebao biti nesto poput:
type TUcenik = record
Ime: String;
Prezime: String;
Tezina: Integer;
Visina: Integer;
Starost: Integer;
end;
I trebao bi imati varijable:
var
TempUcenik: TUcenik;
VektorUcenika: array[0..100] of TUcenik;
BrojUcenika: Integer;
I onda radis zamjenu tijekom sortiranja (vrtis petlje od 0 do BrojUcenika-1) kao i inace, u stilu:
if VektorUcenika[3].Prezime > VektorUcenika[19].Prezime then
begin
TempUcenik := VektorUcenika[3];
VektorUcenika[3] := VektorUcenika[19];
VektorUcenika[19] := TempUcenik;
end;
Naravno, u uglatim zagradama idu varijable. Naravno, "Prezime" zamijenis poljem po kojem zelis sortirati, a ">" zamijenis s "<" ako hoces suprotni smjer sortiranja.
tnx, ispo sam malo glup tj. i ja sam razmišljao da bi na takav način moglo al mi nekak nije pasalo za stringove da se mogu tako sortirat i sad probam i ono radi -.-