026.Ada语言的定点类型

with Ada.Text_IO;
use Ada.Text_IO;

procedure Fixed is
   
   COARSE_PI : constant :=3.15;
   
   type MY_FIXED is delta 0.1 range -40.0..120.0;
   type ANGLE is delta 0.05 range -COARSE_PI..COARSE_PI;
   
   Theta,Omega,Phi:ANGLE:=0.50;
   FUNNY_VALUE:MY_FIXED;
   
   package Int_IO is new Ada.Text_IO.Integer_IO(Integer);
   use Int_IO;
   package Fixed_IO is new Ada.Text_IO.Fixed_IO(MY_FIXED);
   use Fixed_IO;
   package Fixed2_IO is new Ada.Text_IO.Fixed_IO(ANGLE);
   use Fixed2_IO;
   package Flt_IO is new Ada.Text_IO.Float_IO(Float);
   use Flt_IO;
   
begin
   
   Put("Theta starts off with the value");
   Put(Theta,5,2,0);
   New_Line(2);
   
   Theta:=Omega+Phi;
   Theta:=Omega-Phi;
   Theta:=5*Omega-2*Phi;
   Theta:=ANGLE(3*Omega/Phi);
   Theta:=abs(Omega-3*Phi);
   
   FUNNY_VALUE:=5.1;
   for Index in 1..10 loop
      Put("Funny_Value is now");
      Put(FUNNY_VALUE,5,1,0);
      Put(FUNNY_VALUE,5,5,0);
      FUNNY_VALUE:=MY_FIXED(FUNNY_VALUE*MY_FIXED(1.1));
      New_Line;
   end loop;
   
   New_Line;
   Put("MY_FIXED'delta=");
   Put(MY_FIXED(MY_FIXED'Delta)); --
   New_Line;
   Put("MY_FIXED'FIRST = ");
   Put(MY_FIXED'FIRST);
   New_Line;
   Put("MY_FIXED'LAST =  ");
   Put(MY_FIXED'LAST);
   New_Line;

end Fixed;
   
   
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值