Program tesztmegado; Uses newdelay,crt; Const maxvalasz=9; kmax=100; Type vtip=(egy, tobb, mind); valasz= record szoveg: string; pontszam: integer; end; kerdes= record vdb: integer; szov:string; tip: vtip; valaszok: array [1..maxvalasz+1] of valasz; end; Const vhalmaz:array[egy..mind] of string=('e','t','m'); Var f: file of kerdes; k: kerdes; Procedure Beolvas; Var sv,i,j,c: integer; k: kerdes; fnev,nev: string; sv1: char; v1:vtip; Begin clrscr; repeat write('Mi a file neve? '); readln(fnev); fnev:=fnev+'.tst'; {$I-} assign(f,fnev); rewrite(f); {$I+} until ioresult=0; repeat write('Mi a teszt neve? '); readln(nev); until (nev<>'') and (length(nev)<=255); k.szov:=nev; k.vdb:=0; k.tip:=egy; write(f,k); repeat write('H ny k‚rd‚sb‹l fog  llni a teszt? '); readln(nev); val(nev,sv,c); until (c=0) and (sv in [1..kmax]); for i:=1 to sv do begin repeat write('Mi az ',i,'. k‚rd‚s sz”vege? '); readln(nev); until (nev<>'') and (length(nev)<=255); k.szov:=nev; repeat write('K‚rd‚s tipusa? e(gy)/t(”bb)/m(ind) '); sv1:=readkey; v1:=low(Vtip); j:=1; while ((v1Vhalmaz[v1])) and (j<=3) do inc(v1); inc(j); until (sv1=vhalmaz[v1]) and (j<=3); k.tip:=v1; writeln(vhalmaz[v1]); repeat write('H ny v lasz van a k‚rd‚sre? '); readln(nev); val(nev,sv,c); until (c=0) and (sv in [1..maxvalasz]); k.vdb:=sv; for j:=1 to k.vdb do begin repeat write('Adja meg a(z) ',j,'. v lasz sz”veg‚t! '); readln(nev); until (nev<>'') and (length(nev)<=255); k.valaszok[j].szoveg:=nev; if k.tip<>mind then begin repeat write('H ny pontot ‚r ez a v lasz? '); readln(nev); val(nev,sv,c); until (c=0) and ((sv>=0) and (sv<=32767)); k.valaszok[j].pontszam:=sv; end else Begin Write('J˘ ez a v lasz? (i/n) '); Repeat sv1:=readkey; Until (sv1='i') or (sv1='n'); If sv1='i' then k.valaszok[j].pontszam:=1 else k.valaszok[j].pontszam:=-1; writeln(sv1); End; end; if k.tip=mind then begin repeat write('H ny pontot ‚rnek a v laszok? '); readln(nev); val(nev,sv,c); until (c=0) and ((sv>=0) and (sv<=32767)); k.valaszok[maxvalasz+1].pontszam:=sv; end; write(f,k); end; close(f); End; BEGIN beolvas; Writeln; Writeln('Nyomjon meg egy billentyűt a kil‚p‚shez'); readkey; END.