{=== Programtervez‚s P˘tz rthelyi - 2000. 12. 06. === PZ001206.txt Minden sz mozott feladat megold s t kl”n A4-es lapra Ąrja! Minden lapnak csak az egyik fel‚re Ąrhat. A lap tetej‚re Ąrja fel balra a feladat sz m t, jobbra a nev‚t, Neptun k˘dj t, tank”rsz m t valamint gyakorlatvezetoje nev‚t! A megold shoz haszn lhat bels“ elj r sokat ‚s fggv‚nyeket, de csak ezek haszn lhatnak glob lis v ltoz˘t, a feladatk‚nt kapott elj r sok illetve fggv‚ny nem. --------------------------------------------------------------------------- 1. [ 1-1 pont ] Meg kell  llapĄtani, hogy az al bbi programr‚szek hat s ra mi fog kiĄr˘dni. Az is fontos, hogy mi kerl Ł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“: 1. Meg kell  llapĄtani, hogy az al bbi programr‚szek hat s ra mi fog kiĄr˘dni. Az is fontos, hogy mi kerl Ł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“: const n = 2; type tomb =array [1..n] of boolean; r =record nev :packed array [1..2] of char; suly :integer; end; rectomb =array [1..3] of r; halmaz =set of 1..30; mutato =^lancrec; lancrec =record kulcs :1..40; lanc :mutato; end; lakas =(alberlet,tarsberlet,foberlet,orok,kastely); var e1,e2,e3 :integer; m1,m2,m3 :mutato; v1,v2,v3 :real; b1,b2,b3 :boolean; ch1,ch2,ch3 :char; rect :rectomb; t1 :array [1..10] of integer; t2 :array [1..n] of tomb; l1,l2 :lakas; h1,h2,h3 :halmaz; procedure s (var j :integer; k :integer); var e1 :integer; begin e1:=j+1; j:=j div k; k:=k-e1; writeln(e1:5, j:5, k:5); end; function f (l,m :integer) :boolean; begin f:=l+m<10; end; A) for e1:=1 to 10 do t1[e1]:=10; for l1:=alberlet to foberlet do t1[succ(ord(l1))] := 3; for e1:=1 to 5 do writeln(t1[e1]:5); B) h1:=[1..5,7,9]; h2:=[4..7,14]; h3:=h1*h2; h1:=[5,7]; if h1<=h3 then for e1:=1 to 30 do if e1 in h1 then writeln(e1); C) e1:=7; e2:=3; s(e1,e2); writeln(e1,e2); D) e1:=0; while not eof do begin read(ch1); if ch1 in ['0'..'9'] then begin e1:=e1+ord(ch1)-ord('0'); readln; end; end; writeln(e1); A bemeneti adatok megad s ban: | =sor eleje _ = sz˘k”z # =Łjsor jel @ = file v‚ge A bemeneti adatok: |A_273_4# |fg_-49_57_# @ -------------------------------------------------------------------------- 2. K‚szĄtsen fggv‚nyt, amely egy val˘s sz mokb˘l  ll˘ t”mbben meghat rozza az elemek  tlag t Łgy, hogy nem veszi figyelembe a legkisebb 6 ‚s a legnagyobb 6 sz mot! Tujuk, hogy a t”mbben legal bb 13 sz m van. V lasszon megfelel“ param‚tereket ‚s magyar zza meg azokat! Magyar zza meg m˘dszer‚t! -------------------------------------------------------------------------- 3. K‚szĄtsen teljes programot, mely kiĄrja az ”sszes k‚tjegyu Theisz f‚le sz m-p rokatokat, azaz az olyanokat, melyekre elv‚gezhet“ a k”vetkez“ jellegu "egyszerusĄt‚s": a sz ml l˘ban ‚s a nevezoben is  thŁzva az azonos sz mjegyet, itt a 6-ot: 64/16 = 4/1 val˘ban igaz! ============================ BEUGR• VGE ================================= 4. [2 pont] Adottak a k”vetkez“ definĄci˘k: type mut = ^elem; elem = record tartalom : ...; { : valamilyen ‚rt‚k } elott, utan :mut; end; ft = file of elem; A. Mit csin lna a k”vetkez“ elj r s, ha j˘ lenne? [0.3 pont] Ne azt adja meg, mit csin lnak az egyes l‚p‚sek, hanem hogy az eg‚sz elj r s mire lenne j˘! procedure miez (var p :mut; f :ft); begin rewrite (f); while p <> nil do begin write (f, p^.tartalom); p := p^.utan; end; end; B. Keresse meg a hib kat, magyar zza meg ‚s javĄtsa ki azokat! [0.2 pont] (Ehhez el‚g csak a kijavĄtott r‚szt leĄrnia.) C. K‚szĄtse el a fenti elj r s ellenp rj t! [1.5 pont] V lasszon megfelel“ param‚tereket, ‚s magyar zza meg azokat! -------------------------------------------------------------------------- 5. [2 pont] K‚szĄtsen programot, amely kiĄrja, hogy a szabv nyos bemeneten beolvasott sz”vegben h nyszor fordul el“ a "teringett‚t" sz˘!