{====== Programoz s ====== P˘tz rthelyi - 1996. 12. 17. ====== NZ961217.txt Minden sz mozott feladat megold s t kl”n lapra ˇrja! Minden lapnak csak az egyik fel‚re ˇrhat. Minden lap tetej‚re ˇrja fel balra a feladat sz m t, jobbra a nev‚t, tank”rsz m t ‚s csoportja bet–j‚t! A feladat szerinti elj r sok ‚s fggv‚nyek nem haszn lhatnak glob lis v ltoz˘t. Ha bels“ elj r st vagy fggv‚nyt is deklar l, azok haszn lhatnak glob lis v ltoz˘t, de legfeljebb a feladat szerinti elj r s, fggv‚ny vagy program v ltoz˘it ‚s param‚tereit. --------------------------------------------------------------------------- 1. Meg kell llapˇtani, hogy az al bbi programr‚szek hat s ra mi fog kiˇr˘dni. Az is fontos, hogy mi kerl Łj sorba. Csak a v‚gleges megold st adja be! A r‚szletek egy olyan programban helyekednek el, amelynek a deklar ci˘s r‚sze a k”vetkez“: < L sd: V-Def.pas > 1.A) --------------------------------------------------------------------- for e1:=1 to 3 do begin t1[e1]:=e1; t1[2*e1]:=-e1; end; t1[5]:=0; for e1:=1 to 6 do for e2:=1 to 6-e1 do if t1[e2] > t1[e2+1] then begin e3:=t1[e2]; t1[e2]:=t1[e2+1]; t1[e2+1]:=e3; end; for e1:=1 to 6 do write(t1[e1],' '); writeln; 1.B) --------------------------------------------------------------------- new(m1); m1^.lanc:=nil; m1^.kulcs:=5; for e1:=1 to 5 do begin m2:=m1; new(m3); m3^:=m2^; m2^.kulcs:=e1; m2^.lanc:=m3; end; m3^.lanc:=m1^.lanc; for e1:=1 to 6 do begin write(m1^.kulcs:3); m1:=m1^.lanc; end; writeln; 1.C) ---------------------------------------------------------------------- e1:=22; e2:=3; while not f(e1,e2) do s(e1,e2); writeln; 1.D) ---------------------------------------------------------------------- h1:=[1..3]; h2:=[25..30]; repeat e1:=0; while not (e1 in h1) do e1:=succ(e1); h1:=h1-[e1]; e1:=e1+1; while e1 in h1 do e1:=e1+1; h1:=h1+[e1]; until h1 <= h2; writeln(e1); 2. Feladat ------------------------------------------------------ 2 pont K‚szˇtsen teljes programot, amely a szabv nyos bemeneten beolvasott sz”veg sorait 80 karakteren jobbra igazˇtva ˇrja ki a szabv nyos kimenetre. Tudjuk, hogy egy beolvasott sor sem hosszabb 80 karaktern‚l. 3. Feladat ------------------------------------------------------ 2 pont Adottak a k”vetkez“ tˇpusok: TYPE mut = ^ rec; rec = record kulcs :real; bal,jobb :mut; end; Deklar ljon fggv‚nyt, amely megadja egy rec elemtˇpusŁ bin ris f ban a legkisebb kulcsŁ elem pointer‚t. Nem tudjuk, hogy a fa rendez“fa-e. ============================== BEUGR• VGE ============================== 4. Feladat ------------------------------------------------------ 2 pont Deklar ljon olyan gyorsrendez‚si elj r st, amely a hasonlˇt si alap-‚rt‚ket az adott intervallum legfeljebb 5, egym st˘l a lehet“ legt volabb lev“, kl”nb”z“ index– elem‚b“l sz mˇtja ki. 5. Feladat ------------------------------------------------------ 2 pont Adott k‚t, legfeljebb 80-karakteres sorokb˘l ll˘ sz”veg-file, melyek mindegyike kl”n-kl”n soronk‚nt n”vekv“, azaz ABC sorrendbe rendezett. K‚szˇtsen programot, amely ezek ‚rt‚keit tov bbi k‚t file-ba v logatja, egyikbe a k‚t bemeneti file-ban megegyez“ sorok kerljenek, mindegyik csak egyszer, a m sikba a kl”nb”z“ek.