Moduły
Moduły są podstawą programowania modularnego i służą przede wszystkim do grupowania
procedur i funkcji w biblioteki, a także do dzielenia dużych programów na powiązane logicznie części.
Moduł nie stanowi samoistnego programu, a jego użycie w programie wymaga deklaracji.
Po zadeklarowaniu modułu dostępna jest każda procedura i funkcja zdefiniowana w danym module,
jak również zadeklarowane w nim stałe, typy i zmienne. Uruchomienie skompilowanego programu
zawierającego deklaracje modułu wymaga, aby moduł taki był również wcześniej skompilowany.
Ogólna postać modułu:
unit nazwa-modułu;
część opisowa modułu
część implementacyjna
część inicjująca.
Część opisowa modułu ma postać:
interface
deklaracje modułów;
definicje literałów, typów i zmiennych;
lista nagłówków, procedur i funkcji;
Część implementacyjna:
implementation
definicje procedur i funkcji;
deklaracje etykiet, literałów i zmiennych
oraz definicje typów, funkcji i procedur
wewnętrznych.
Deklaracje parametrów formalnych w części
opisowej i implemnetacyjnej muszą być ze
sobą zgodne.
Część inicjująca modułu to end z kropką.
unit graf;
interface
uses graph;
procedure kwadrat(xx,yy,aa,kk:integer);
procedure kolo(xx,yy,rr,kk:integer);
procedure piszxy(xx,yy,kk:integer;napis:string);
implementation
procedure kwadrat(xx,yy,aa,kk:integer);
begin
setfillstyle(1,kk);
bar(xx,yy,xx+aa,yy+aa);
end;
procedure kolo(xx,yy,rr,kk:integer);
begin
setcolor(kk);
circle(xx,yy,rr)
end;
procedure piszxy(xx,yy,kk:integer;napis:string);
begin
setcolor(kk);
outtextxy(xx,yy,napis);
end;
end.
program grafika1;
uses crt,graph,graf;
var s,t:integer;
begin
initgraph(s,t,'');
kwadrat(100,100,200,red);
kolo(200,200,100,green);
kolo(200,200,142,yellow);
piszxy(80,350,white,'Okregi:');
piszxy(140,350,green,'wpisany w kwadrat');
piszxy(140,370,yellow,'i opisany na kwadracie');
readkey;
closegraph;
end.