*************** EEADA\EasyEx\HelloWo\   Put\   Program\
*************** HelloWo1\HelloWo1.ADB ***************
WITH   Gnat.IO ;  USE Gnat.IO;

PROCEDURE   HelloWo1  IS
BEGIN
   Gnat.IO.Put (   "Hello World..."   );
END;
*************** HelloWo5\HelloWo5.ADB ***************
WITH   Gnat.IO ;  USE Gnat.IO;

PROCEDURE   HelloWo5  IS
BEGIN
   Put_Line (   "Hello World....."   );
   Put_Line (   "Hello World....."   );
   Put_Line (   "Hello World....."   );
   Put_Line (   "Hello World....."   );
   Put_Line (   "Hello World....."   );
END;
*************** HelloWo9\HelloWo9.ADB ***************
WITH   Gnat.IO ;  USE Gnat.IO;

PROCEDURE   HelloWo9  IS
BEGIN
   ----- LOOP
   FOR i in 1..9 LOOP
      Put_Line (   "Hello World........."   );
   END LOOP;
END;
*************** Put2x2\Put2x2.ADB ***************
WITH   Gnat.IO ;  USE Gnat.IO;

PROCEDURE   Put2x2  IS
BEGIN
   Put (   2 + 2   );
END;
*************** PutCalc\PutCalc.ADB ***************
WITH   Text_IO ;  USE Text_IO;

PROCEDURE   PutCalc  IS

   PACKAGE   Flt_IO  IS  new Float_IO(Float);  USE Flt_IO;

   PI : CONSTANT Float := 3.14159 ;

   R : Float ;
   C , A : Float ;

BEGIN
   R := 10.0 ;

   C := 2.0 * PI * R ;
   A := PI * R * R ;

   Put (   "Radius="   );
   Put (   R   );
   New_Line ;

   Put (   "Circumference="   );
   Put (   C   );
   New_Line ;

   Put (   "Area="   );
   Put (   A   );
   New_Line ;
END;
*************** PutMsg\PutMsg.ADB ***************
WITH   Gnat.IO ;  USE Gnat.IO;

PROCEDURE   PutMsg  IS

   MyMsg : CONSTANT String :=
                "- Nice weather isn't it ?"  &  ASCII.CR & ASCII.LF
              & "- Yes ""nice"" weather."    &  ASCII.CR & ASCII.LF ;

BEGIN          
   Put (   MyMsg   );
END;
*************** Chr20_FF\Chr20_FF.ADB ***************
WITH   Gnat.IO ;  USE Gnat.IO;

PROCEDURE   Chr20_FF  IS
BEGIN
   Put (   "***** CHARS: "   );

   ----- LOOP
   FOR i in 32..255 LOOP
      Put (   Character'Val(i)   );      --- Char to Integer:   i:=Character'Pos(C)
   END LOOP;
END;
*************** PrimeNb\PrimeNb.ADB ***************
WITH   Gnat.IO ;  USE Gnat.IO;

PROCEDURE   PrimeNb  IS
   IsPrimeArray : Array(1..1000) of Boolean ;
   j , jMax : Integer ;
BEGIN
   Put (   "***** PRIME NUMBERS: "   );

   ----- LOOP 1 , On each number
   FOR i in 1..1000 LOOP

      ----- Could be a prime number
      IsPrimeArray(i) := TRUE ;

      j    := 2 ;
      jMax := Integer( i / 2 );
      
      ----- LOOP 2 , Search a divisor
      WHILE IsPrimeArray(i) and (j <= jMax) LOOP
         ----- "j" can divide "i" ?
         IF (i mod j) = 0 THEN
            IsPrimeArray(i) := False ;
         END IF;
         j := j + 1 ;
      END LOOP;
      
      ----- Display only prime numbers
      IF IsPrimeArray(i) = TRUE THEN
         Put (   i   );
         Put (   " "   );
      END IF;
   END LOOP;
   
--
--   [<--                   i                      -->]
--    [<-- j -->]
--   .#.....................#.........................#
--    |         |                                     |
--    2      i div 2                                1000
--
END;
