
♦ Deklaracja procedury

procedure nazwaProcedury(lista parametrów);
lokalne
deklaracje
begin
instrukcje
end;
Przykład 1. Przykład programu wywołującego procedurę bez parametrów.
KOD
{$APPTYPE CONSOLE}
![]()
procedure pokaz;
Procedura o nazwie pokaz
begin
writeln('Pascal');
end;
![]()
{----------------------------}
Program główny
begin
pokaz; //wywołanie procedury 'pokaz'
readln;
end.
WYJŚCIE
Pascal
Przykład 2. Przykład programu wywołującego procedurę z parametrem.
KOD
{$APPTYPE CONSOLE}
![]()

procedure pokaz(ile: integer);
var
Procedura pokaz z parametrem ile typu całkowitego
i :
integer;
begin
for i:=1
to ile do
writeln('Pascal');
end;
{----------------------------}
![]()
begin
Program główny
pokaz(4);
readln;
end.
WYJŚCIE
Pascal
Pascal
Pascal
Pascal
♦ Deklaracja funkcji

function nazwaFunkcji(lista parametrów) : zwracanytyp;
lokalne
deklaracje
begin
instrukcje
end;
Przykład 3. Przykład programu wywołującego funkcję z parametrem.
KOD
{--------------------------------------------------------------------------
Obliczanie cen
detalicznych na podstawie cen hurtowych - cena1, cena2 -
z 10 procentową marżą i
7 procentowym podatkiem VAT
--------------------------------------------------------------------------}
{$APPTYPE CONSOLE}
Funkcja o nazwie cenaTowaru z parametrem cenaHurtowa typu single zwracająca wartość typu single
![]()
function cenaTowaru(cenaHurtowa : single) : single;
begin
result:=
cenaHurtowa * 1.1; //10% marża
result:=
result * 1.07; //7% podatek VAT
end;
{-------------------------------------------------------------------------}
![]()
var
cena1 :
single;
cena2 :
single;
begin
cena1:= 100;
Program główny
cena2:= 200;
writeln('Cena
pierwszego towaru wynosi: ', cenaTowaru(cena1):0:2);
writeln('Cena
drugiego towaru wynosi: ', cenaTowaru(cena2):0:2);
readln;
end.
WYJŚCIE
Cena
pierwszego towaru wynosi: 117.70
Cena
drugiego towaru wynosi: 235.40
Przykład 4. Przykład programu wywołującego funkcję z dwoma parametrami.
KOD
{------------------------------------------------------------------------------
Obliczanie cen detalicznych
na podstawie cen hurtowych - cena1, cena2, cena3 -
z 10 procentową marżą i podanym
podatkiem VAT
-------------------------------------------------------------------------------}
{$APPTYPE CONSOLE}
Funkcja o nazwie cenaTowaru z parametrem cenaHurtowa oraz VAT typu single zwracająca wartość typu single
function cenaTowaru(cenaHurtowa : single; VAT : single) : single;
begin
result:=
cenaHurtowa * 1.1; //10% marża
result:=
result * (1 + VAT); //VAT
end;
{-------------------------------------------------------------------------}

var
cena1 :
single;
cena2 :
single;
cena3 :
single;
begin
cena1:= 100;
Program główny
cena2:= 200;
cena3:= 300.99;
writeln('Cena
pierwszego towaru wynosi: ', cenaTowaru(cena1, 0.22):0:2);
writeln('Cena
drugiego towaru wynosi: ', cenaTowaru(cena2, 0.07):0:2);
writeln('Cena
trzeciego towaru wynosi: ', cenaTowaru(cena3, 0.14):0:2);
readln;
end.
WYJŚCIE
Cena
pierwszego towaru wynosi: 134.20
Cena
drugiego towaru wynosi: 235.40
Cena
trzeciego towaru wynosi: 377.44
Zadanie 1. Zmodyfikuj program z
przykładu 4 w taki sposób, aby najpierw pytał użytkownika
o ceny hurtowe wraz z odpowiednią
stawką VAT dla danego towaru,
a następnie obliczył ich
cenę detaliczną z uwzględniem 15% marży.
KOD
{-----------------------------------------------------------
Obliczanie cen
detalicznych na podstawie cen hurtowych
trzech towarów z 15%
marżą i podanym podatkiem VAT
-----------------------------------------------------------}
{$APPTYPE CONSOLE}
function cenaTowaru(cenaHurtowa : single; VAT : single) : single;
begin
result:=
cenaHurtowa * 1.15; //15 marża
result:=
result * (1 + VAT/100); //VAT
end;
{-------------------------------------------------------------------------}
var
cena1 :
single;
cena2 :
single;
cena3 :
single;
VAT1 :
single;
VAT2 : single;
VAT3 : single;
begin
write('Podaj cene
hurtowa pierwszego towaru: ');
readln(cena1);
write('Stawka VAT: ');
readln(VAT1);
write(#10, 'Podaj cene hurtowa drugiego towaru:
');
readln(cena2);
write('Stawka VAT: ');
readln(VAT2);
write(#10, 'Podaj cene hurtowa trzeciego
towaru: ');
readln(cena3);
write('Stawka VAT: ');
readln(VAT3);
writeln(#10,'Cena detaliczna
pierwszego towaru wynosi: ', cenaTowaru(cena1, VAT1):0:2);
writeln('Cena
detaliczna drugiego towaru wynosi: ', cenaTowaru(cena2, VAT2):0:2);
writeln('Cena
detaliczna trzeciego towaru wynosi: ', cenaTowaru(cena3, VAT3):0:2);
readln;
end.
WYJŚCIE
Podaj
cene hurtowa pierwszego towaru: 100
Stawka
VAT: 22
Podaj
cene hurtowa drugiego towaru: 1235
Stawka
VAT: 7
Podaj
cene hurtowa trzeciego towaru: 226
Stawka
VAT: 14
Cena
detaliczna pierwszego towaru wynosi: 140.30
Cena
detaliczna drugiego towaru wynosi: 1519.67
Cena
detaliczna trzeciego towaru wynosi: 296.29