Program Display;
USES
crt;
VAR
N3,N2,N1,N0:Boolean;
PROCEDURE a;
BEGIN
gotoxy(1,1);
Write('----------');
END;
PROCEDURE b;
VAR
y:Integer;
BEGIN
FOR y:=2 TO 5 DO
BEGIN
gotoxy(10,y);
Write('|');
END;
END;
PROCEDURE c;
VAR
y:Integer;
BEGIN
FOR y:=6 TO 9 DO
BEGIN
gotoxy(10,y);
Write('|');
END;
END;
PROCEDURE d;
BEGIN
gotoxy(1,10);
Write('----------');
END;
PROCEDURE e;
VAR
y:Integer;
BEGIN
FOR y:=6 TO 9 DO
BEGIN
gotoxy(1,y);
Write('|');
END;
END;
PROCEDURE f;
VAR
y:Integer;
BEGIN
FOR y:=2 TO 5 DO
BEGIN
gotoxy(1,y);
Write('|');
END;
END;
PROCEDURE g;
BEGIN
gotoxy(1,5);
Write('----------');
END;
BEGIN
clrscr;
FOR N3:= False TO True DO
FOR N2:= False TO True DO
FOR N1:= False TO True DO
FOR N0:= False TO True DO
BEGIN
IF N1 THEN
IF N0 THEN
IF (N3 or N2) THEN a ELSE
ELSE
a
ELSE
IF N0 THEN
a
ELSE
IF (N3 or N2) THEN a ELSE;
IF (N1 or not(N2)) THEN b ELSE ;
IF N1 THEN
c
ELSE
IF N0 THEN
IF (N2 or N3) THEN c ELSE
ELSE
c;
IF N1 THEN
IF N0 THEN
IF (N2 or N3) THEN d ELSE
ELSE
IF not(N2 or N3) THEN d ELSE
ELSE
IF N0 THEN
IF not(N3) THEN d ELSE
ELSE
IF (N2 or N3) THEN d ELSE;
IF N1 THEN
IF N0 THEN
IF (N2 or N3) THEN e ELSE
ELSE
ELSE
IF N0 THEN
e
ELSE;
IF N1 THEN
IF N0 THEN
f
ELSE
ELSE
IF N0 THEN
IF (N2 or N3) THEN f ELSE
ELSE
IF (N2 or N3) THEN f ELSE;
IF N1 THEN
IF N0 THEN
g
ELSE
IF not(N2 or N3) THEN g ELSE
ELSE
IF N0 THEN
g
ELSE
IF (N2 or N3) THEN g;
ReadLn;
ClrScr;
END
END.
               (
geocities.com/v.iniestra/apuntes)                   (
geocities.com/v.iniestra)