如何在Ada中将整数转换为浮点数,反之亦然?

Joh*_*yne 1 ada

是否有某种实现的函数可以将整数转换为float,反之亦然?

我设法编写了一个将整数转换为float的短函数:

function Transform(First: Integer) return Float is
    A: Integer := First;
    B: Float := 0.0;
begin
    For_Loop:
    for I in Integer range 1 .. A loop
        B := B + 1.0;
    end loop For_Loop;
    return B;
end Transform;
Run Code Online (Sandbox Code Playgroud)

但我不知道如何从去FloatInteger.

Jam*_*s K 9

Ada可以进行显式类型转换

with Ada.Text_IO; use Ada.Text_IO;
procedure Convert is
  A: Integer:= 4;
  B: Float;
  C: Float := 6.8;
  D: Integer;
begin
  B := Float(A);
  Put_Line(Float'Image(B));

  D:= Integer(C);
  Put_Line(Integer'Image(D));
end Convert;
Run Code Online (Sandbox Code Playgroud)

  • 另请参阅[*4.6类型转换*](http://www.ada-auth.org/standards/12rm/html/RM-4-6.html#I2915). (3认同)