uses crt, graph; var sonad: array [1..5] of string; f:text; s,sona:string; taht:char; x,k,pikkus,i,j,c,e,h,vale,oige,oige1,d,m:integer; Procedure laul1; begin sound(440); delay(100); nosound; delay(50); sound(440); delay(100); nosound; delay(50); sound(395); delay(100); nosound; delay(50); sound(440); delay(100); nosound; delay(50); sound(350); delay(100); nosound; delay(50); sound(350); delay(100); nosound; delay(50); sound(350); delay(100); nosound; end; Procedure laul2; var i:integer; begin for i:=1 to 9 do begin sound(1000*(10-i));delay(100); end; nosound; end; Procedure pea; begin fillellipse(450,175,25,25); setcolor(red); ellipse(450,180,210,330,10,13); setcolor(white); putpixel(440,170,blue); putpixel(460,170,blue); putpixel(450,180,red); end; Procedure algus; var d,m:integer; begin d:=detect; initgraph(d,m,'i'); clrscr; setcolor(red); outtextxy(5,100,'****** ****** ****** ** ** ** *** ** **********'); outtextxy(5,115,'** *** ** ** ** ** ** ** ** ** ** **** ** ** '); outtextxy(5,130,'** *** ** ** ** ** ** ** ** ** ** ** ** ** ** '); outtextxy(5,145,'** *** ** ** ** ** ** **** ** ** ** ** ** ** '); outtextxy(5,160,'****** ** ** ** ** ** ** ** ** ** ** ** ****** '); outtextxy(5,175,'** ** ** ** ** ** ** ** ** ** ** ** '); outtextxy(5,190,'** ** ** ** ** ** ** ** ** ** ** ** '); outtextxy(5,205,'** ** ** ** ** ** ** ** ** **** ** '); outtextxy(5,220,'** ****** ****** ** ** ** ** *** **********'); repeat setcolor(blue); outtextxy(250,350,'Vajuta suvalist klahvi'); delay(1000); setcolor(lightgray); outtextxy(250,350,'Vajuta suvalist klahvi'); delay(1000); until keypressed; end; Procedure voit; begin setcolor(red); outtextxy(5,80, ' ******* '); outtextxy(5,100,'** ** ***** ** ************** ***** ** ******* '); outtextxy(5,115,' ** ** ** ** ** ** ** *** ** ** **'); outtextxy(5,130,' ** ** ** ** ** ** ** ** ** **'); outtextxy(5,145,' ** ** ** ** ** ** *** ** ** **'); outtextxy(5,160,' ** ** ** ** ** ** ***** ** ** **'); outtextxy(5,175,' ** ** ** ** ** ** **** ** ** **'); outtextxy(5,190,' ** ** ** ** ** ** ** ** ** ** **'); outtextxy(5,205,' **** ** ** ** ** *** *** ** ** **'); outtextxy(5,220,' ** ***** ** ** ****** ** ******* '); end; Procedure kaotus; begin setcolor(blue); outtextxy(1,100,'** ** * ****** ******** * ******* ** ****** '); outtextxy(1,115,'** ** *** ** ** ** *** *** *** ** ** **'); outtextxy(1,130,'** ** ** ** ** ** ** ** ** *** ** ** **'); outtextxy(1,145,'** ** ** ** ** ** ** ** ** *** ** ** **'); outtextxy(1,160,'**** ** ** ** ** ** ** ** *** ** ** **'); outtextxy(1,175,'** ** ** ** ** ** ** ** ** *** ** ** **'); outtextxy(1,190,'** ** ************* ** ** ** ************* ** *** ** ** **'); outtextxy(1,205,'** ** ** ** ** ** ** ** ** *** *** ** ** **'); outtextxy(1,220,'** ** ** ** ****** ** ** ** ******* ** ****** '); end; begin algus; readln; d:=detect; initgraph(d,m,''); randomize; assign(f, 's6nad.txt'); reset(f); k:=0; i:=0; while not eof(f) do begin i:=i+1; readln(f, s); sonad[i]:=copy(s, 1, 30); k:=k+1; end; close(f); x:=random(k)+1; sona:=sonad[x]; pikkus:=length(sona); clrscr; for j:=1 to pikkus do begin c:=35*j; outtextxy(c,10,'___ '); end; {writeln(sona);} oige:=0; vale:=0; repeat begin readln(taht); oige1:=0; for e:=1 to pikkus do begin h:=35*e+1; if sona[e]=taht then begin outtextxy(h,10,taht); oige:=oige+1; oige1:=oige1+1; laul1; end; end; if oige1=0 then begin laul2; vale:=vale+1; if vale=1 then line(300,100,300,375) else if vale=2 then line(600,100,600,375) else if vale=3 then line(300,100,600,100) else if vale=4 then line(450,100,450,150) else if vale=5 then pea else if vale=6 then line(450,200,450,280) else if vale=7 then line(450,200,410,250) else if vale=8 then line(450,200,490,250) else if vale=9 then line(450,280,410,330) else line(450,280,490,330); end; end; until ((vale=10) or (oige=pikkus)); if oige=pikkus then voit; if vale=10 then kaotus; repeat setcolor(green); outtextxy(250,350,'Vajuta suvalist klahvi'); delay(1000); setcolor(lightgray); outtextxy(250,350,'Vajuta suvalist klahvi'); delay(1000); until keypressed; closegraph; end.