clean up PrintRoots2.

This commit is contained in:
Kyle Isom 2019-09-24 09:40:00 -07:00
parent 306a13f866
commit b4fff86a37
1 changed files with 12 additions and 3 deletions

View File

@ -1,11 +1,13 @@
-- print_roots2 demonstrates runtime exceptions.
with Ada.Text_IO;
with Ada.Float_Text_IO;
with Ada.Numerics;
with Ada.Numerics.Generic_Elementary_Functions;
procedure Print_Roots is
procedure Print_Roots2 is
use Ada.Text_IO;
use Ada.Float_Text_IO;
use Ada.Numerics;
package Numerics is new Ada.Numerics.Generic_Elementary_Functions(Float);
use Numerics;
X: Float;
@ -16,8 +18,15 @@ begin
loop
Get(X);
exit when X = 0.0;
Put("Root of "); Put(X); Put(" is ");
begin
Put("Root of "); Put(X); Put(" is ");
exception
when Ada.Numerics.Argument_Error =>
Put("not calculable: X must be >= 0");
when Constraint_Error =>
Put("not calculable: X must be >= 0");
end;
Put(Sqrt(X));
New_Line;
end loop;
end Print_Roots;
end Print_Roots2;