Advertisement
Guest User

valjda radi

a guest
May 31st, 2016
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 2.96 KB | None | 0 0
  1. procedure Najbolji(ni:niz_igraca; ukI:integer);
  2.         var gk:igrac; df:niz_igraca; mf:niz_igraca; cf:niz_igraca;
  3.         pom:igrac;
  4.         i,j,k:integer;
  5. begin
  6.  
  7. gk.ocena := -1;
  8. for k:=1 to ukI do
  9.         if ((ni[k].pozicija=golman) AND (ni[k].ocena>gk.ocena) ) then
  10.                 begin
  11.                     gk:=ni[k];    
  12.                 end;
  13.  
  14. //zavrseno sa izborom golmana.
  15.  
  16.   //ovaj prvi for ide od 1-4, jer ti trebaju 4 najbolja igraca za odbranu i sredinu
  17.   //umesto 4 mozes staviti da ti for ide do MAX_ODBRANA ili MAX_SREDINA. al radice samo ako imas isti broj igraca u odbrani i u sredini. Ako nije broj isti, onda stavis veci broj od ta dva.
  18.   for i:=1 to 4 do
  19.     begin
  20.       df[i].ocena := -1;
  21.       mf[i].ocena := -1;
  22.      
  23.       //kreces od i-tog mesta jer prvih i mesta zauzimaju vec najbolji igraci odbrane, one koje si pronasao
  24.       //ides do (ukI-i-1) jer se na kraju nalaze najbolji igraci sredine, one koje si nasao, zbog toga neces da ides do kraja niza. jer ce se tamo vec nalaziti najbolji igraci sredine.
  25.       for k:=i to (ukI-i-1) do
  26.         begin
  27.         //proveris da li je trenutni k-ti igrac u nizu bolji od odbrambenog igraca kog si nasao pre toga
  28.         if((ni[k].pozicija=odbrana) AND (ni[k].ocena>df[i].ocena)) then
  29.             begin
  30.                 df[i] := ni[k];
  31.                 //zamena mesta, stavljas ga na i-to mesto u nizu
  32.                 pom := ni[k];
  33.                 ni[k]:=ni[i];
  34.                 ni[i]:=pom;
  35.             end;
  36.         //isto samo za ove sto igraju sredinu
  37.         if((ni[k].pozicija=sredina) AND (ni[k].ocena>mf[i].ocena)) then
  38.             begin
  39.                 mf[i] := ni[k];
  40.                 //opet zamena mesta, al sad ne mozes stavljati na pocetak niza
  41.                 //jer se tamo nalaze odbrambeni igraci, pa cemo ove iz sredine stavljati na kraj niza
  42.                 pom := ni[k];
  43.                 ni[k]:=ni[ukI-i-1]; //-1 ide jer ako imas 30 igraca i oduzmes 1, prvog najboljeg igraca ces
  44.                                 //staviti na 29. mesto umesto na 30., da ne bi gubio to jedno mesto
  45.                                 //onda dodas jos to -1, i onda stavlja na 30. (odnosno poslednje) mesto u
  46.                                 //nizu
  47.                 ni[ukI-i-1]:=pom;
  48.             end;
  49.            
  50.         end;
  51.     end;
  52.  
  53. //posle ovog velikog fora, trebalo bi da imas nadjene najbolje igrace sredine i odbrane. Ti uradi za napad.
  54.  
  55. writeln('Idealan tim u formaciji 4-4-2 je: ');
  56. writeln;
  57. writeln('Golman: ');
  58. writeln(gk.ime,' ',gk.prezime,' sa ocenom: ', gk.ocena);
  59. writeln('Odbrana: ');
  60.  
  61. for i:=1 to MAX_ODBRANA do
  62.         writeln(df[i].ime, ' ',df[i].prezime, ' ', ' sa ocenom: ',df[i].ocena);
  63. writeln;
  64.  
  65. writeln('Sredina: ');
  66. for i:=1 to MAX_SREDINA do
  67.         writeln(mf[i].ime,' ',df[i].prezime,' ',' sa ocenom: ',mf[i].ocena);
  68. writeln;
  69.  
  70. writeln('Napad: ');
  71. for i:=1 to MAX_NAPAD do
  72.         writeln(cf[i].ime,' ',cf[i].prezime,' ',' sa ocenom: ',cf[i].ocena);
  73. writeln;
  74.  
  75. end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement