h¡rad stecnika i. ‚vfolyam sz m¡t¢g‚pek programoz sa informatika i. ‚vfolyam programoz s ‚s probl‚mamegold s ™sszevont vizsga 1990. december. 13. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - t e c h n i k a i m i n i m u m figyelem ! az els“ h rom feladattal ”sszesen 12 pontot szerezhet. ha nem sikerl 7,2 pontot el‚rnie, a vizsga el‚gtelen. a feladatok kidolgoz s ra 60 perc  ll rendelkez‚s‚re. beadni nem k”telez“, egy ¢r ja van meggondolni mag t. ha nem biztos a sikerben, ne kock ztasson, ne adja be! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1. feladat el‚rhet“ pontsz m: 6-szor 1 pont (pont csak hib tlan v laszra adhat¢) az al bbi programok csak utas¡t sr‚szkben kl”nb”znek. meg kell  llaptania, hogy az egyes programok mit ¡rnak ki. fel kell tntetni, hogy mi kerl £j sorba, ‚s f‚lre‚rthetetlenl jel”lni kell a ki¡rt sz¢k”z”ket is. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2. feladat el‚rhet“ pontsz m: 3 pont k‚sz¡tsen programot, amely az input-r¢l beolvasott val¢s sz mokat kl”n sorba ki¡rja az output-ra. mindegyik ut n ki¡rja azt is, hogy az utolj ra beolvasott sz m mennyivel t‚r el az eddig olvasott sz mok  tlag t¢l. az adatok v‚g‚t egy -100 -n l kisebb sz m jelzi. ezt az adatot m r nem kell feldolgozni, de ki kell ¡rni az eddigi legkisebb ‚s a legnagyobb beolvasott sz mot. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3. feladat el‚rhet“ pontsz m: 3 pont k‚sz¡tsen elj r st, amely egy eg‚szeket tartalmaz¢ sz zelem– t”mbben helyi- ‚rt‚k szerint sz mjegyeivel  br zolt, maximum 48 jegy–, tizes sz mrendszer- beli sz mot h rmas sz mrendszerbe k¢dol  t. a t”mb indexel‚se megfelel a helyi‚rt‚kekhez tartoz¢ hatv nykitev“nek. az elj r s az eredm‚nyt az  tvett eredeti t”mbben adja vissza. a sz m  ltal el nem foglalt rekeszekben 0 van. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - m a x i m u m - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 4. feladat el‚rhet“ pontsz m: 1 pont k‚sz¡tsen programot, amely az input-r¢l beolvas h rom els“fok£ h romismeret- lenes egyenletet. egy-egy sor tartalmazza az egytthat¢kat ‚s az eredm‚nyt. meg kell  llap¡tania, ‚s az output-ra ki kell ¡rnia, hogy az egyenletrend- szernek nulla, egy vagy v‚gtelen sz m£ megold sa van-e. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5. feladat el‚rhet“ pontsz m: 1,5 pont k‚sz¡tsen programot, amely az input-r¢l end of file-ig neveket olvas be, ‚s ki¡rja az output-ra azoknak a n‚vsor t (alfabetikus sorrendben!), akiknek csal dnev‚t valaki keresztn‚vk‚nt viseli. egy sorban egy-egy n‚v tal lhat¢, a csal dnevet a keresztn‚vt“l egy sz¢k”z v lasztja el. a nevek nem hosszab- bak 32 karaktern‚l. a beolvasott nevek t rol s ra haszn ljon dinamikus adat- szerkezetet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6. feladat el‚rhet“ pontsz m: 1,5 pont a) e1:=5; for e2:=e1-3 to e2+3 do write (e2); ----------------------------------------------------- b) e1:=2; e2:=3; h1:=[]; h2:=[4..9,15..9,15..20]; repeat h1:=h1+[e1]; e1:=e1+3; until e1>20; h3:=h1*h2; for e1:=1 to 30 do if e1 in h3 then write(e1); ----------------------------------------------------- c) v1:=4; v2:=0.1; b1:=sin(v1)>1.1; t2[1,1]:=b1 or (sqrt(v2)>1.0); t2[1,2]:=t2[1,1] or (trunc(v1-0.1)>2); t2[2,1]:=not t2[1,1] and t2[1,2]; t2[2,2]:=ord('a') > ord('f'); for e1:=1 to 2 do for e2:=1 to n do write(t2[e1,e2]:6); ----------------------------------------------------- d) e1:=-6; e2:=2; while f(8,e1+e2) do s(e1,2*e2); ----------------------------------------------------- e) for e1:=1 to 10 do t1[e1]:=e1 mod 4; for e1:=9 downto 2 do if t1[e1-1.)+t1(.e1+1.)=t1(.e1.)*2 then writeln (e1,t1(.e1.)); ----------------------------------------------------- f) new(m1); new(m2); new(m3); with m1@ do begin kulcs:=1; lanc:=m2; end; with m2@ do begin kulcs:=2; lanc:=m3; end; with m3@ do begin kulcs:=3; lanc:=m3; end; m3:=m1; e1:=0; repeat write(m3@.kulcs); e1:=e1+m3@.kulcs; m3:=m3@.lanc; until e1>8; ----------------------------------------------------- g) writeln; write(' '); ch1:=chr(succ(ord(succ('0')))); e1:=0; for ch2:=ch1 to '5' do e1:=succ(e1); writeln(e1); ----------------------------------------------------------- , megoldas: ~~~~~~~~~ a. 2 3 4 5 b. 5 8 17 20 c. false true true false d. -5 -1 9 0 0 4 e. 9 1 6 2 5 1 2 2 f. 1 2 3 3 g. 4