kalkulatu_karratua.adb
with Irakurri_Osokoa;
with Idatzi_Katea, Idatzi_Osokoa;
procedure Kalkulatu_Karratua is
   
   Zenbakia, Karratua: Integer;
begin
   
   -- Irakurri zenbakia
   Idatzi_Katea ("Idatzi zenbaki osoko bat eta sakatu <RET> ");
   Irakurri_Osokoa (Zenbakia);
   
   -- Kalkulatu karratua
   Karratua:= Zenbakia ** 2;
   
   -- Idatzi emaitza
   Idatzi_Katea ( "Bere karratua hau da:       ");
   Idatzi_Osokoa (Karratua);

 end Kalkulatu_Karratua;

idatzi_zatitzaileak.adb
with Irakurri_Osokoa;
with Idatzi_Katea, Idatzi_Osokoa;

procedure  Idatzi_Zatitzaileak is
   N, I, Hondarra : Integer;
begin
   -- Irakurri zenbakia
   Idatzi_Katea ("Idatzi zenbaki osoko bat eta sakatu <RETURN> ");
   Irakurri_Osokoa (N);
 
   -- Kalkulatu eta idatzi zatitzaileak
   Idatzi_Katea ("Hauek dira bere zatitzaileak:  ");
  
   I:= 1;
   while I <= N loop
      Hondarra := N mod I;
      if Hondarra = 0 then
        Idatzi_Osokoa (N => I);
      end if;
      I := I + 1 ;
   end loop;
   
end Idatzi_Zatitzaileak ;