-- Demonstrates floating point error
with ada.text_io; use ada.text_io; -- Library for text output
with ada.float_text_io; use ada.float_text_io; -- Library for floating point output
procedure one_v1 is
point_01: constant float := 0.01;
sum: float := 0.0;
begin
for i in 1 .. 100 loop
sum := sum + point_01;
end loop;
put("point_01 in scientific notation: ");
put(point_01,base => 2);
new_line;
put("point_01 in scientific notation: ");
put(point_01);
new_line;
put("point_01 formatted: ");
put(point_01, fore => 1, aft => 9, exp => 0); -- Formatted output is easier to read
new_line;
put("point_01 with more decimal places: ");
put(point_01, fore => 1, aft => 19, exp => 0); -- Let's examine more decimal places
new_line(2);
put("sum formatted: ");
put(sum, fore => 1, aft => 9, exp => 0);
new_line;
end one_v1;