profil

Tworzenie funkcji i procedur w Turbo Pascalu

poleca 85% 1819 głosów

Treść
Grafika
Filmy
Komentarze

Procedury to „części” kodu programu, które wykonują przydzielone im zadanie. Procedury które pewnie znasz to np. Write. Powoduje ona wypisanie na ekranie tego, co podaliśmy w nawiasie. Jest zawarta w standardowych bibliotekach, więc nie musimy pisać jej kodu, wystarczy wpisać jej nazwę. Co mamy jednak począć, gdy musimy np. w kilku miejscach w programie wypisać na ekran taki sam domek? Mamy pisać kilka domków, co zajmuje dużo miejsca w naszym programie? Nie! Wystarczy napisać go raz, a później tylko wywoływać naszą procedurę!
Struktura naszej procedury wygląda następująco:

Procedure nazwa_procedury(przekazywane_zmienne);
var zmienna; {tutaj znajdują się zmienne naszej procedury}
begin
kod procedury {tu znajduje się treść naszej procedury}
end;

begin
clrscr;
nazwa_procedury; {tutaj procedura zostanie wykonana}
readkey;
end.

A teraz przykład:

procedure domek;
begin
Writeln(' ');
Writeln(' II /\');
Writeln(' II/ \');
Writeln(' I/ () \');
Writeln('----------');
Writeln('I [] [] I');
Writeln('I [] [] I');
Writeln('I [] [] I');
Writeln('I _ I');
Writeln('I I I I');
Writeln('----------');
end;
begin
clrscr;
domek;
readkey;
end.

Funkcja różni się tym od procedury, że zwraca nam wynik wykonanego zadania.
A teraz struktura funkcji:

function nazwa_funkcji(przekazywane_zmienne):typ_wyniku;
var zmienna; {tu znajdują się zmienne funkcji}

begin
kod funkcji {tu znajduje się treść naszej funkcji}
nazwa_funkcji:=wynik_funkcji;
end;

begin
write(nazwa_funkcji(zmienne znajdujące się w nawiasie przy nazwie funkcji);
readkey;
end.

A teraz przykład gotowej funkcji obliczającej pole kwadratu:

function kwadrat(a:integer):integer;
var pole:integer;
begin
pole:=a*a;
kwadrat:=pole;
end;

begin
clrscr;
write('Podaj bok kwadratu: ');
readln(a);
write(kwadrat(a));
readkey;
end.

Mam nadzieję, że opisałem to w miarę zrozumiale. To mój pierwszy artykuł o Pascalu więc bądźcie wyrozumiali;)

Czy tekst był przydatny? Tak Nie

Czas czytania: 1 minuta