Ðåôåðàò: Îáó÷àþùàÿ ïðîãðàììà Ãðàôèêà ïðîãðàììèðîâàíèþ â ãðàôè÷åñêîì ðåæèìå íà ÿçûêå turbo-pascal 7.x
M[J]:=I;
end;
M[1]:=1;
repeat
OKNO;
begin
Read(F62,At);
R1:=StrPas(At.P2);{Ïðåîáðàçîâàíèå ASCIIZ-ñòðîêè At.P2 â
ñòðîêó òèïà string}
Val(R1,Z1,Code); {Ïðåîáðàçîâàíèå ñèìâîëüíîãî ïðåäñòàâëåíèÿ
íîìåðà âîïðîñà â äâîè÷íóþ ôîðìó}
Y:=20;
If(Z1=M[0])
or (Z1=M[1]) or (Z1=M[2]) or (Z1=M[3]) then
begin
repeat
S:=StrPas(At.P3); {Ïðåîáðàçîâàíèå ASCIIZ-ñòðîêè At.P3 â
ñòðîêó òèïà string}
OutTextXY(20,Y,S); {Âûâîä òåêñòà âîïðîñà}
case At.P1
of
'
':begin
end;
end;
Y:=Y+10;
Read(F62,At);
until
At.P1='*';
OutTextXY(50,330,'ÂÂÅÄÈÒÅ ÍÎÌÅÐ ÏÐÀÂÈËÜÍÎÃÎ ÎÒÂÅÒÀ ___');
2:CH:=ReadKey;
SetColor(4);
OutTextXY(320,325,CH);
SetColor(1);
readkey;
If(CH<>'1') and (CH<>'2') and (CH<>'3') and (CH<>'4')
then
begin
SetFillStyle(1,11);
Bar(318,320,327,340);
GoTo
2;
end
else
repeat
Read(F63,Atr);
R2:=StrPas(Atr.P2); {Ïðåîáðàçîâàíèå ASCIIZ-ñòðîêè Atr.P2 â
ñòðîêó òèïà string}
Val(R2,Z2,Code); {Ïðåîáðàçîâàíèå ñèìâîëüíîãî ïðåäñòàâëåíèÿ
íîìåðà âîïðîñà â äâîè÷íóþ ôîðìó}
If Z2=Z1
then
begin
repeat
If Atr.P3=CH
then
begin
Y:=100;
OKNO;
repeat
Stt:=StrPas(Atr.P4); {Ïðåîáðàçîâàíèå ASCIIZ-ñòðîêè Atr.P4
ñòðîêó òèïà string}
R5:=StrPas(Atr.P5); {Ïðåîáðàçîâàíèå ASCIIZ-ñòðîêè Atr.P5 â
ñòðîêó òèïà string}
Val(R5,Z5,Code); {Ïðåîáðàçîâàíèå ñèìâîëüíîãî ïðåäñòàâëåíèÿ
îöåíêè â äâîè÷íóþ ôîðìó}
REZ6:=Round((REZ6+Z5)/2); {Ôîðìèðîâàíèå îöåíêè }
OutTextXY(20,Y,Stt);
Y:=Y+10;
case
Atr.P1 of
'
':begin
end;
end;
Read(F63,Atr);
until
Atr.P3='*';
readkey;
GOTO
3;
end
else
Read(F63,Atr);
until
Atr.P1='*';
end
until
Atr.P1='0';
end
else
3:end;
until At.P1='0';
Close(F62);
Close(F63);
CloseGraph;
end;
begin
end.
Unit
RAZDEL7;
interface
uses
Crt,Graph,Dos,Strings,MYBOOK;
type An =
record {Òåîðèÿ}
P1:Char; {Ïåðåìåííàÿ ïîëÿ ôëàãà : êîíåö ôàéëà, íîìåð
èëëþñòðàöèè}
P2:array[0..69] of char; {Ïåðåìåííàÿ ïîëÿ òåêñòà}
end;
type
Ant=record {Òåêñò âîïðîñîâ}
P1:Char;
{Ïåðåìåííàÿ ïîëÿ ôëàãà:êîíåö ôàéëà, íîìåð èëëþñò-
ðàöèè, êîíåö âîïðîñà}
P2:array[0..1] of Char; {Ïåðåìåííàÿ ïîëÿ íîìåðà âîïðîñà}
P3:array[0..69] of Char; {Ïåðåìåííàÿ ïîëÿ òåêñòà âîïðîñà}
end;
type
Antr=record { Ñïðàâêè }
P1:Char; {Ïåðåìåííàÿ ïîëÿ ôëàãà:êîíåö ôàéëà, êîíåö âîïðîñà,
íîìåð èëëþñòðàöèè}
P2:array[0..1] of Char; {Ïåðåìåííàÿ ïîëÿ íîìåðà âîïðîñà}
P3:array[0..0]
of Char; {Ïåðåìåííàÿ ïîëÿ ôëàãà: íîìåð ñïðàâêè
è êîíåö ñïðàâêè}
P4:array[0..69] of Char; {Ïåðåìåííàÿ ïîëÿ òåêñòà ñïðàâêè}
P5:array[0..2] of Char; {Ïåðåìåííàÿ ïîëÿ îöåíêè}
end;
var F7:
file of An ; {Ïåðåìåííûå òåîðèè}
A:An;
N,Y,T:integer;
St:string[68];
var
F72:file of Ant; { Ïåðåìåííûå âîïðîñîâ}
At:Ant;
R1:string[2];
Z1:integer;
S:string[68];
var
F73:file of Antr; {Ïåðåìåííûå ñïðàâîê}
Atr:Antr;
R2:string[2];
R3:string[1];
Stt:string[68];
R4:string[2];
Z2,Z3,Z4:integer;
CH:
Char;{Ïåðåìåííàÿ äëÿ ïðèíÿòèÿ ñèìâîëà ñ êëâèàòóðû}
K,J,I:integer; {Ïåðåìåííûå öèêëîâ}
M:
array[0..3] of integer; {Ìàññèâ äëÿ õðàíåíèÿ ÷åðûðåõ
âûáðàííûõ íîìåðîâ âîïðîñîâ}
Code:integer;
var
R5:string[1]; {ïåðåìåííûå âûâîäà ðåçóëüòàòîâ}
Z5:integer;
REZ7:Longint; {ïåðåìåííàÿ îöåíêè}
var
Size:word;
pt:pointer;
u,Nn,xt,yt:integer;
procedure
RAZDEL70;
implementation
procedure
RAZDEL70;
Label
0,1,2,3;
begin
REZ7:=6;
GraphRegim;
Assign(F7,'RAZTEX7.pas'); {ñâÿçü ñ ôàéëîì òåîðèè}
{SI-}
Reset(F7);
{SI+}
If
IOResult <> 0 then Writeln ('Íåò ôàéëà RAZTEX7.pas');
repeat
OKNO;
For N:=0
to 32 do
begin
Read(F7,A);
St:=StrPas(A.P2); {Ïðåîáðàçîâàíèå ASCIIZ-ñòðîêè A.P2 â ñòðîêó
òèïà string}
case
A.P1 of
'
':OutTextXY(20,10*N+10,St);
'*':begin
SetColor(4);
OutTextXY(20,10*N+10,St);
SetColor(1);
end;
'1':begin
For Nn:=0 to 3 do
begin
GetMem(pt,ImageSize(0,200,50,250));
GetImage(0,200,50,250,pt^);
u:=0;
while u<(GetMaxX) do
begin
PutImage(u-1,150,pt^,1);
u:=u+8;
PutImage(u-1,150,pt^,1);
end;
Dispose(pt);
end;
end;
'2':begin
SetViewPort(10,50,630,330,true);
SetBKColor(0);
SetViewPort(20,60,620,320,true);
ClearViewPort;
SetBKColor(14); Sound(880); Delay(200); NoSound;
SetBKColor(12); Sound(698); Delay(200); NoSound;
SetBKColor(14); Sound(880); Delay(200); NoSound;
SetBKColor(12); Sound(698); Delay(200); NoSound;
SetBKColor(10); Sound(934); Delay(200); NoSound;
SetBKColor(14); Sound(880); Delay(200); NoSound;
SetBKColor(13); Sound(784); Delay(400); NoSound;
SetBKColor(1); Sound(523); Delay(200); NoSound;
SetBKColor(9); Sound(523); Delay(200); NoSound;
SetBKColor(1); Sound(523); Delay(200); NoSound;
SetBKColor(2); Sound(587); Delay(100); NoSound;
SetBKColor(5); Sound(659); Delay(100); NoSound;
SetBKColor(4); Sound(699); Delay(200); NoSound;
SetBKColor(3); Sound(699); Delay(200); NoSound;
SetBKColor(4);
Sound(699); Delay(200); NoSound;
Delay(600);
SetViewPort(5,5,635,335,true);
SetBKColor(14);
ClearDevice;
OKNO;
End;
'#':GoTo 0;
'0':GoTo 0;
end;
end;
0:readkey;
until
A.P1='0' ;
Close(F7);
Assign(F72,'Jos.pas'); {ñâÿçü ñ ôàéëîì âîïðîñîâ}
{SI-}
Reset(F72);
{SI+}
If
IOResult<>0 then Writeln('Íåò ôàéëà Jos.pas');
Assign(F73,'Ios.pas');
{SI-}
Reset(F73); {ñâÿçü ñ ôàéëîì ñïðàâîê}
{SI+}
If
IOResult<>0 then Writeln('Íåò ôàéëà Ios.pas');
OKNO1; {"Êîíòðîëüíûå âîïðîñû"}
readkey;
ClearDevice;
Randomize; {Âûáîð ÷åòûðåõ íîìåðîâ âîïðîñîâ}
For J:=0
to 3 do
begin
1:I:=Random(7);
If I=0
then GOTO 1;
Ñòðàíèöû: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19
|