PROGRAM SPARTITO(output);
uses
Graph;
var
grDriver : Integer;
grMode : Integer;
ErrCode : Integer;
a:integer;
procedure chiave(x,y:integer);
const
chiax:array[1..167] of integer =
(22,23,24,20,21,22,23,24,25,26,4,5,19,20,21,22,23,26,27,32,33,34,
2,3,4,5,6,7,8,9,19,20,21,27,28,29,30,31,35,36,1,8,9,10,11,18,19,
20,25,26,29,37,0,1,9,10,11,12,18,19,20,22,23,24,29,37,38,40,41,
0,1,10,11,12,13,18,19,20,21,29,34,35,37,39,41,0,1,2,11,12,13,14,
15,16,17,19,20,29,33,34,35,36,37,38,40,41,1,2,3,4,11,12,13,14,15,
20,21,25,26,29,33,34,35,36,37,3,4,5,6,7,8,9,10,13,14,15,21,22,23,
24,25,29,34,35,36,14,15,16,29,16,17,18,28,29,17,18,19,27,28,20,
21,22,25,26,22,23,24);
chiay:array[1..167] of integer =
(0,0,0,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,
3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,
5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,
7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,
9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,11,11,11,11,11,12,12,12,12,12,
13,13,13,13,13,14,14,14,0); (* lo "0" che c'e' alla fine e' sbagliato *)
var
conta:integer;
begin
for conta:=1 to 167 do
putpixel(chiax[conta]+x,chiay[conta]+y,15)
end;
begin
grDriver := Detect;
InitGraph(grDriver,grMode,'');
rectangle(0,0,639,479);
rectangle(5,5,10,10);
for a:=0 to 4 do
line(20+a*6,20,20+a*6,460);
for a:=0 to 4 do
line(100+a*6,20,100+a*6,460);
for a:=0 to 4 do
line(180+a*6,20,180+a*6,460);
for a:=0 to 4 do
line(260+a*6,20,260+a*6,460);
for a:=0 to 4 do
line(340+a*6,20,340+a*6,460);
for a:=0 to 4 do
line(420+a*6,20,420+a*6,460);
for a:=0 to 4 do
line(500+a*6,20,500+a*6,460);
for a:=0 to 4 do
line(580+a*6,20,580+a*6,460);
chiave(18,445);
chiave(98,445);
chiave(178,445);
chiave(258,445);
chiave(338,445);
chiave(418,445);
chiave(498,445);
chiave(578,445);
ReadLn;
CloseGraph;
end.