首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ada - Discrete_Random示例

Ada - Discrete_Random示例
EN

Stack Overflow用户
提问于 2019-09-03 18:23:19
回答 1查看 229关注 0票数 1

John的“Ada 2012编程”第53页分享了一个我无法工作的不完整的代码片段。

我想出了一个完整的程序来扩展书中的代码.

代码语言:javascript
复制
with Ada.Numerics; use Ada.Numerics;
with Ada.Text_IO; use Ada.Text_IO;

procedure Main is
  type Coin is (Heads, Tails);
  package Random_Coin is new Discrete_Random(Coin);
  use Random_Coin;

  G : Generator;
  C : Coin;
begin

  for i in 1 .. 20 loop
    C := Random(G);
    Put (C'Image);
  end loop;  

end Main;

我使用的"GPS“IDE抱怨了以下错误:

  • 第6行:"Discrete_Random“未定义
  • 第7行:"Random_Coin“未定义
  • 第9行:“生成器”未定义
  • 第14行:“随机”未定义

IDE确实给了我"intellisense“(使用Visual中的一个术语),它表明Discrete_Random实际上是可见的,并且是可用的,因为我添加了"with”和" use“语句。

有人能帮我看看我犯的这些愚蠢的错误吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-03 20:38:42

问题在于,与Ada.Numerics.Pi不同,PiAda.Numerics的一个组件,Discrete_RandomAda.Numerics的子代。

一旦您说了use Ada.Numerics,您就可以在您的程序中只编写Pi,但是您必须实际使用with Ada.Numerics.Discrete_Random才能使它可用。

实际上,您不需要使用withuse Ada.Numerics,这很好:

代码语言:javascript
复制
with Ada.Numerics.Discrete_Random;
with Ada.Text_IO; use Ada.Text_IO;

procedure Main is
   type Coin is (Heads, Tails);
   package Random_Coin is new Ada.Numerics.Discrete_Random(Coin);
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57776932

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档