Previous topic |
Ada Home Page |
Index
Package example
package PLANIMETRY is
type length is digits 5 range 0.0 .. 1.0E10;
type area is digits 5 range 0.0 .. 1.0E20;
function area_rectangle (L,H : length) return area;
function area_circle (R : length) return area;
function area_triangle (B,H : length) return area;
function circumf_circle (R : length) return length;
end PLANIMETRY;
package body PLANIMETRY is
PI : constant := 3.1415926536;
function area_rectangle (L,H : length) return area is
begin
return area(L) * area(H);
end;
function area_circle (R : length) return area is
begin
return PI * area(R) ** 2;
end;
function area_triangle (B,H : length) return area is
begin
return area(B) * area(H) / 2.0;
end;
function circumf_circle (R : length) return length is
begin
return 2.0 * PI * R;
end;
end PLANIMETRY;
with TEXT_IO, PLANIMETRY;
procedure main is
use TEXT_IO;
... declarations
L : PLANIMETRY.length; -- length
H : PLANIMETRY.length; -- height
A : PLANIMETRY.area; -- area
R : PLANIMETRY.length; -- radius
begin
R := ... ;
A := PLANIMETRY.area_circle (R);
end main;
Compilation commands
sun ada
- adac planimetry_s.a
- adac planimetry_b.a
- adac main.a
- adae main
gnat ada
- gnatcc planimetry.ads
- gnatcc planimetry.adb
- gnatcc main.adb
- gnatbl main.ali
Previous topic |
Ada Home Page |
Index
c-lokan@adfa.oz.au / 20 Feb 96