Stacks Image 21

Jednostka programowa

Funkcja

Poniższa funkcja Square oblicza kwadrat liczby całkowitej:

function Square (N : Integer) return Integer is
begin
return N * N;
end Square;


Plik: square.adb

Funkcja w języku Ada ma następującą postać:

function nazwa ( parametry ) return typ is
deklaracje
begin
treść
end nazwa;


Treścią funkcji Square jest jedna instrukcja return. Podano w niej wyrażenie, którego wartość jest wartością zwracaną przez funkcję.

Aby uruchomić powyższą funkcję przygotowaliśmy procedurę Test_Square:

with Square;
with Ada.Integer_Text_IO; use Ada.Integer_Text_IO;

procedure Test_Square is
begin
Put (Square (10));
end Test_Square;


Plik: test_square.adb

Użyta klauzula with Square poleca kompilatorowi dołączyć do przekładu procedury Test_Square przekład funkcji Square.

Kompilacja przykładu:

$ gnatmake test_square.adb 
gcc -c test_square.adb
gcc -c square.adb
gnatbind -x test_square.ali
gnatlink test_square.ali


Wynik uruchomienia:

$ ./test_square 
100
$


procedura ← → pakiet