ช่วยอธิบายการทำงานของโปรแกรมนี้ทีครับ

ตามหัวข้อข้างบนครับ มันเป็นโปรแกรมเครื่องคิดเลข(จำนวนเต็ม) และถ้าผม อยากให้มัน รับค่าทศนิยมได้ ผมควรแก้ไขจุดไหน อะไรยังไงครับ

นี่คือส่วนของ code ครับ

with Text_IO;
with Gnat.Io; use Gnat.Io;
procedure Calc is
   Op: Character;            
   Disp: Integer := 0;         
   In_Val: Integer;            
begin
   loop
      
      Put(Disp);
      New_Line;

      Put("> ");

      loop
         Get(Op);
         exit when Op /= ' ';
      end loop;

      exit when Op = 'Q' or Op = 'q';

       Get(In_Val);
      Text_IO.Skip_Line;

      case Op is
         when '='      => Disp := In_Val;
         when '+'      => Disp := Disp + In_Val;
         when '-'      => Disp := Disp - In_Val;
         when '*'      => Disp := Disp * In_Val;
         when '/'      => Disp := Disp / In_Val;
         when '^'      => Disp := Disp ** In_Val;
         when '0'..'9' => Put_Line("Please specify an operation.");
         when others   => Put_Line("What is " & Op & "?");
      end case;
   end loop;
end Calc;

ขอบคุณล่วงหน้าครับ
แก้ไขข้อความเมื่อ
แสดงความคิดเห็น
โปรดศึกษาและยอมรับนโยบายข้อมูลส่วนบุคคลก่อนเริ่มใช้งาน อ่านเพิ่มเติมได้ที่นี่