[ peromalosutra @ 11.04.2005. 15:06 ] @
Pokusao sam uraditi jedan klasicni skolski zadatak (Razvrstati sto slucajno odabranih (ili zadanih) brojeva u rastucem redoslijedu), sinula mi je ideja, i nakon unosenja i ispravljanja svih sintaksnih greski- pogadjate... program i dalje ne radi. Dakle kada ga pokrenem on mi 100 puta napise broj 99 (posto sam stavio da bira brojeve 1-100) umjesto da napise 1,2,3,5... zavisno od brojeva koje je odabrao. Evo kako program izgleda, pa ako ima neko da voli lupati glavu nad jednostavnim zadacima koji uporno ne rade neka proba: Program Paskal; Uses Crt; Var Niz : array [1..100] of integer; nizrazvrstanih:array [1..100] of integer; max,i,n,m:integer; Begin Randomize; For i:=1 to 100 do {odabira 100 slucajnih brojeva i upisuje ih u niz} begin niz :=Random (100); Writeln (Niz); {ispisuje neuredjeni niz} end; writeln ('Nasumicno odabiranje brojeva zavrseno.'); readln; clrscr; Max:=niz[1]; {proglasava prvi broj niza trenutno najvecim} For m:=1 to 100 do {ponavlja sve petlje 100 puta, jer toliko br. treba razvrstati} begin For i:= 1 to 100 do If Niz> Max then {trazi trenutno najveci broj u nizu} max:=Niz; {max uzima vrijednost najveceg broja u nizu} nizrazvrstanih[m]:=max; {pamti trenutni max u m-tu lokaciju niza razvrstanih} For n:=1 to 100 do if niz[n]=max then niz[n]:=0; {proglasava najveci broj niza nulom i omogucava trazenje sledeceg najveceg} End; writeln ('Razvrstavanje brojeva zavrseno.'); readln; clrscr; for i:=1 to 100 do writeln ('Razvrstan[',i,']=',nizrazvrstanih); {ispisuje 100 brojeva po rastucem redoslijedu} readln; End. |