如何在ada中引用数字中的单个数字?

时间:2012-11-03 02:20:26

标签: numbers ada

如果我的号码是1234,我该如何具体提到该号码的第二位?数字存储为变量,var,width => 2给出了12.我需要一种方法来隔离2。

2 个答案:

答案 0 :(得分:3)

我不确定你的意思是var,width =>这不是阿达。

如果变量是Integer的子类型,那么您可以说:

declare 
   Var_As_String := Integer'Image(Var);
   Second_Digit : Character := Var_As_String(3);
begin
   -- Use second digit here.
end;

请注意,索引为3,因为在Image的结果中,第一个字符是减号或空格。

答案 1 :(得分:3)

作为替代方案,还要考虑写入String的{​​{3}}的变体。

with Ada.Integer_Text_IO;
with Ada.Text_IO;
...
declare
   Var : constant Integer := 1234;
   Result : String(1 .. 4);
begin
   Ada.Integer_Text_IO.Put(Result, Var);
   Ada.Text_IO.Put(Result(2));
end;