UNIX Free Pascal




. - 12


(13,14,10,10,10,10,10,14), {O}

(13,3,10,10,3,4,4,4), {P}

(13,14,10,10,10,10,25,2), {Q}

(13,3,10,10,3,17,16,10), {R}

(13,14,10,5,12,8,10,14), {S}

(13,3,6,6,6,6,6,6), {T}

(13,10,10,10,10,10,10,14), {U}

(13,10,10,10,10,10,11,12), {V}

(13,10,10,10,10,27,27,11), {W}

(13,10,10,11,12,11,10,10), {X}

(13,22,22,22,23,24,24,24), {Y}

(13,1,8,7,6,5,4,1), {Z}

(13,21,5,5,5,5,5,21), {[}

(13,4,36,32,12,30,34,9), {\}

(13,35,8,8,8,8,8,35), {]}

(6,11,10,13,13,13,13,13),{^}

(13,13,13,13,13,13,13,1) {_}

);

procedure showchar(ch:Char);

var

i:Byte;

PosX,PosY:Byte;

begin

PosX:=WhereX;

PosY:=WhereY;

if ch<>' ' then

begin

For i:=1 to 8 do

begin

GotoXY(PosX,PosY+i);

Write(stroki[bukvi[ch][i]]);

end;

end

else GotoXY(PosX+8,PosY);

GotoXY(PosX+8,PosY);

end;

procedure showword(s:String);

var

i:Byte;

begin

For i:=1 to Ord(s[0]) do

begin

if WhereX>90 then GotoXY(1,WhereY+8);

showchar(upcase(s[i]));

end;

end;

var

j:Byte;

begin

clrscr;

if paramcount<1 then

begin

writeln('Incorrect argument');

halt(1);

end;

for j:=1 to paramcount do

showword(paramstr(j));

Readln;

end.

13.22. , , , 20 .

uses crt,sysutils,linux;

var

f:text;p:string;i:integer;s:array [0..1000] of char;

BEGIN

clrscr;

writeln(' ');

readln(s);

{$I-}

if not access(pchar(s),f_ok or r_ok) then

begin

writeln(' '+pchar(s)+' ');

halt(1);

end;

assign(f,s);

reset(f);

clrscr;

while not eof(f) do

begin

for i:=1 to 20 do

begin

readln(f,p);

writeln(p);

if eof(f) then break;

end;