Advertisement
adnan360

TAdderMachine pascal object for adding numbers

Jun 24th, 2014
210
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 0.99 KB | None | 0 0
  1. program AdderMachineProject;
  2.  
  3. {$mode objfpc}{$H+}
  4.  
  5. uses
  6.   {$IFDEF UNIX}{$IFDEF UseCThreads}
  7.   cthreads,
  8.   {$ENDIF}{$ENDIF}
  9.   Classes
  10.   { you can add units after this };
  11.  
  12. type
  13.   TAdderMachine = object
  14.     Numbers: array of double;
  15.     procedure Add(num: double);
  16.     function Sum():double;
  17.   end;
  18.  
  19.   procedure TAdderMachine.Add(num: double);
  20.   begin
  21.     SetLength(Numbers, Length(Numbers) + 1);
  22.     Numbers[Length(Numbers) - 1] := num;
  23.   end;
  24.  
  25.   function TAdderMachine.Sum():double;
  26.   var
  27.     thenumber: double;
  28.   begin
  29.     for thenumber in Numbers do
  30.       Result:=(Result+thenumber);
  31.   end;
  32.  
  33. var
  34.   inp: double;
  35.   MyCashRegister: TAdderMachine;
  36.  
  37. begin
  38.   WriteLn('Keep entering numbers. Enter 0 (zero) to get the sum.');
  39.   WriteLn(StringOfChar('-', 50));
  40.   ReadLn(inp); // get the first input
  41.  
  42.   while (inp <> 0) do begin
  43.     MyCashRegister.Add(inp);
  44.     ReadLn(inp);
  45.   end;
  46.  
  47.   WriteLn(StringOfChar('-', 50));
  48.   WriteLn(MyCashRegister.Sum():0:2);
  49.   ReadLn;
  50. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement