Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program AdderMachineProject;
- {$mode objfpc}{$H+}
- uses
- {$IFDEF UNIX}{$IFDEF UseCThreads}
- cthreads,
- {$ENDIF}{$ENDIF}
- Classes
- { you can add units after this };
- type
- TAdderMachine = object
- Numbers: array of double;
- procedure Add(num: double);
- function Sum():double;
- end;
- procedure TAdderMachine.Add(num: double);
- begin
- SetLength(Numbers, Length(Numbers) + 1);
- Numbers[Length(Numbers) - 1] := num;
- end;
- function TAdderMachine.Sum():double;
- var
- thenumber: double;
- begin
- for thenumber in Numbers do
- Result:=(Result+thenumber);
- end;
- var
- inp: double;
- MyCashRegister: TAdderMachine;
- begin
- WriteLn('Keep entering numbers. Enter 0 (zero) to get the sum.');
- WriteLn(StringOfChar('-', 50));
- ReadLn(inp); // get the first input
- while (inp <> 0) do begin
- MyCashRegister.Add(inp);
- ReadLn(inp);
- end;
- WriteLn(StringOfChar('-', 50));
- WriteLn(MyCashRegister.Sum():0:2);
- ReadLn;
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement