A kiválasztott változat és az aktuális verzió közötti különbségek a következők.
| — |
inf-prog-fszi:futar [2017/06/19 10:28] (aktuális) beistvan létrehozva |
||
|---|---|---|---|
| Sor 1: | Sor 1: | ||
| + | ====== Futár ====== | ||
| + | |||
| + | <code pascal futar.pas> | ||
| + | program futar; | ||
| + | type futaros=record | ||
| + | nap: integer; | ||
| + | | ||
| + | km: integer; | ||
| + | end; | ||
| + | var i, | ||
| + | napmin, | ||
| + | csere: futaros; | ||
| + | T: | ||
| + | f:text; | ||
| + | function ut_ar(km: | ||
| + | begin | ||
| + | case km of | ||
| + | 1..2: ut_ar:=500; | ||
| + | 3..5: ut_ar:=700; | ||
| + | 6..10: ut_ar:=900; | ||
| + | 11..20: ut_ar: | ||
| + | 21..30: ut_ar: | ||
| + | else ut_ar:= -1; | ||
| + | end; | ||
| + | end; | ||
| + | begin | ||
| + | Assign(f,' | ||
| + | writeln(' | ||
| + | reset(f); | ||
| + | i:=0; | ||
| + | while not eof(f) do | ||
| + | begin | ||
| + | inc(i); | ||
| + | read(f, | ||
| + | read(f, | ||
| + | readln(f, | ||
| + | end; | ||
| + | close(f); | ||
| + | n:=i; | ||
| + | writeln(n,' | ||
| + | { for i:=1 to n do | ||
| + | writeln(T[i].nap,' | ||
| + | writeln(' | ||
| + | napmin: | ||
| + | for i:=2 to n do | ||
| + | begin | ||
| + | if T[i].nap < napmin then napmin: | ||
| + | if T[i].nap > napmax then napmax: | ||
| + | end; | ||
| + | for i:=1 to n do | ||
| + | if (T[i].nap=napmin) and (T[i].fuvarsz=1) then | ||
| + | writeln(' | ||
| + | writeln(' | ||
| + | maxi:=1; | ||
| + | for i:=1 to n do | ||
| + | if (T[i].nap=napmax) and (T[i].fuvarsz> | ||
| + | writeln(' | ||
| + | writeln(' | ||
| + | for szabadnap: | ||
| + | begin | ||
| + | i: | ||
| + | while (i<=n) and (szabadnap<> | ||
| + | inc(i); | ||
| + | if i>n then writeln(' | ||
| + | end; | ||
| + | writeln(' | ||
| + | maxi:=1; | ||
| + | for i:=2 to n do | ||
| + | if T[i].fuvarsz> | ||
| + | writeln(T[maxi].nap,' | ||
| + | writeln(' | ||
| + | for i:=napmin to napmax do | ||
| + | begin | ||
| + | write(i,' | ||
| + | sum:=0; | ||
| + | for j:=1 to n do | ||
| + | if T[j].nap=i then sum: | ||
| + | writeln(sum: | ||
| + | end; | ||
| + | writeln(' | ||
| + | writeln(' | ||
| + | ar: | ||
| + | if ar<0 then | ||
| + | writeln(' | ||
| + | else | ||
| + | writeln(' | ||
| + | { if (ut>=1) and (ut<=2) then ar:=500; | ||
| + | if (ut>=3) and (ut<=5) then ar:=700; | ||
| + | if (ut>=6) and (ut<=10) then ar:=900; | ||
| + | if (ut>=11) and (ut<=20) then ar:=1400; | ||
| + | if (ut>=21) and (ut<=30) then ar:=2000; | ||
| + | if (ut<1) or (ut>30) then writeln(' | ||
| + | writeln(' | ||
| + | for i:=1 to n-1 do | ||
| + | for j:=i+1 to n do | ||
| + | if T[j].nap< | ||
| + | begin | ||
| + | | ||
| + | | ||
| + | | ||
| + | end; | ||
| + | writeln(' | ||
| + | veg:=0; | ||
| + | kezd:=1; | ||
| + | l:=1; | ||
| + | for k:=napmin to napmax do | ||
| + | begin | ||
| + | kezd:=l; | ||
| + | while (l<=n) and (k=T[l].nap) do | ||
| + | inc(l); | ||
| + | veg:=l-1; | ||
| + | if kezd <> l then | ||
| + | begin | ||
| + | writeln(' | ||
| + | for i:=kezd to veg-1 do | ||
| + | for j:=i+1 to veg do | ||
| + | if T[j].fuvarsz< | ||
| + | begin | ||
| + | csere: | ||
| + | T[i]:=T[j]; | ||
| + | T[j]: | ||
| + | end; | ||
| + | end; {if} | ||
| + | end; {for} | ||
| + | Assign(f,' | ||
| + | rewrite(f); | ||
| + | for i:=1 to n do | ||
| + | writeln(f, | ||
| + | writeln(n,' | ||
| + | close(f); | ||
| + | writeln(' | ||
| + | sum:=0; | ||
| + | for i:=1 to n do | ||
| + | sum: | ||
| + | writeln(' | ||
| + | readln; | ||
| + | end. | ||
| + | </ | ||