Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
&引用;ADA.浮动“IO”;不是预定义的库单元_Ada - Fatal编程技术网

&引用;ADA.浮动“IO”;不是预定义的库单元

&引用;ADA.浮动“IO”;不是预定义的库单元,ada,Ada,为什么会出现这个错误 “ADA.FLOAT_IO”不是预定义的库单元 我以前从未用ADA写过任何东西,只是我不知道我在做什么。我使用GNAT进行编译 with Ada.Text_IO; use Ada.Text_IO; with Ada.Float_IO; use Ada.Float_IO; with Ada.Numerics.Elementary_Functions; use Ada.Numerics.Elementary_Functions; procedure MAIN is A,

为什么会出现这个错误

“ADA.FLOAT_IO”不是预定义的库单元

我以前从未用ADA写过任何东西,只是我不知道我在做什么。我使用GNAT进行编译

with Ada.Text_IO; use Ada.Text_IO;
with Ada.Float_IO; use Ada.Float_IO;
with Ada.Numerics.Elementary_Functions;
use Ada.Numerics.Elementary_Functions;

procedure MAIN is
   A,B,C:Float;
   W : Float;
   Re, Im:Float;
begin
   Put("Give A");Get(A);
   Put("Give B");Get(B);
   Put("Give C");Get(C);New_Line;
   if A=0.0 then
      Put_Line("It is not second degree polynomial");
   else
      W:=B*B - 4.0*A*C;
      Re:=B/(2.0*A); Im:=Sqrt(Abs(W))/(2.0*A);
      Put("dif = "); Put(W);New_Line;
      if W<0.0 then
         Put_Line("Complex ");
         Put("x1 = ");Put(-Re);Put(" -j ");Put(Im);Put(" ");
         Put("x2 = ");Put(-Re);Put(" +j ");Put(Im);New_Line;
      else
         Put_Line("Real");
         Put("x1 = ");Put(-Re-Im);Put(" ");
         Put("x2 = ");Put(-Re+Im);
      end if;
   end if;
end MAIN;
带有Ada.Text\u IO;使用Ada.Text\u IO;
用Ada.Float_IO;使用Ada.Float_IO;
使用Ada.Numerics.Elementary_函数;
使用Ada.Numerics.Elementary_函数;
主要程序是
A、 B,C:浮动;
W:浮动;
Re,Im:浮动;
开始
放置(“给予”);获得(A);
认沽(“给予B”);获得(B);
认沽(“给予C”);Get(C);新线;
如果A=0.0,则
Put_线(“它不是二次多项式”);
其他的
W:=B*B-4.0*A*C;
Re:=B/(2.0*A);Im:=Sqrt(绝对值(W))/(2.0*A);
Put(“dif=”);Put(W);新线;

如果WIIRC
Float\u IO
Text\u IO
的子级:
Ada.Text\u IO.Float\u IO
。此外,这是一个通用包。我猜您想要
Ada.Float\u Text\u IO
,它的定义是

package Ada.Float_Text_IO is new Ada.Text_IO.Float_IO (Float);

IIRC
Float\u IO
Text\u IO
的子项:
Ada.Text\u IO.Float\u IO
。此外,这是一个通用包。我猜您想要
Ada.Float\u Text\u IO
,它的定义是

package Ada.Float_Text_IO is new Ada.Text_IO.Float_IO (Float);

好啊两个问题。我应该在我的代码中写在哪里?这一行到底发生了什么?关于第二个问题,请参阅。对于第一种情况,编译器提供了
Ada.Float\u Text\u IO
(),因此您所要做的就是将
Ada.Float\u IO
替换为
Ada.Float\u Text\u IO
。好的。两个问题。我应该在我的代码中写在哪里?这一行到底发生了什么?关于第二个问题,请参阅。首先,编译器提供了
Ada.Float\u Text\u IO
(),因此您所要做的就是将
Ada.Float\u IO
替换为
Ada.Float\u Text\u IO