Advertisement
Guest User

Untitled

a guest
Jul 16th, 2018
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.27 KB | None | 0 0
  1. package a_Zadania.a_Dzien_1.d_Konstruktor;
  2.  
  3. import a_Zadania.a_Dzien_1.c_Metody.Person;
  4.  
  5. import java.lang.reflect.Array;
  6. import java.text.DecimalFormat;
  7. import java.util.ArrayList;
  8.  
  9. public class Calculator {
  10. private ArrayList<String> log = new ArrayList<>();
  11.  
  12. public Calculator() {
  13. }
  14.  
  15. public double add(double num1, double num2)
  16. {
  17. double result = num1 + num2;
  18. log.add("added " + num1 + " to " + num2 + " got " + result);
  19. return result;
  20. }
  21. public double multiply(double num1, double num2)
  22. {
  23. double result = num1 * num2;
  24. log.add("multiplied " + num1 + " with " + num2 + " got " + result);
  25. return result;
  26. }
  27. public double subtract(double num1, double num2)
  28. {
  29. double result = num1 - num2;
  30. log.add("subtracted " + num1 + " from " + num2 + " got " + result);
  31. return result;
  32. }
  33. public double divide(double num1, double num2) throws ArithmeticException
  34. {
  35. DecimalFormat df = new DecimalFormat("#.##");
  36. if(num2==0) throw new ArithmeticException();
  37. double result = num1 / num2;
  38. log.add("divided " + num1 + " by " + num2 + " got " + df.format(result));
  39. return result;
  40. }
  41.  
  42. public void printOperations()
  43. {
  44. System.out.println("==========Operacje=========");
  45. log.forEach(System.out::println);
  46. System.out.println("===========================");
  47.  
  48. }
  49. public void clearOperations()
  50. {
  51. System.out.println("Wyczyszczono operacje");
  52. log.clear();
  53. }
  54.  
  55. public void addToLog(String message)
  56. {
  57. log.add(message);
  58. }
  59.  
  60.  
  61. public static void main(String[] args) {
  62. Calculator calculator = new Calculator();
  63. System.out.println(calculator.add(2,2));
  64. try {
  65. System.out.println(calculator.divide(2,0));
  66. } catch (ArithmeticException e) {
  67. System.out.println("Nie dzieli sie przez 0");
  68. calculator.addToLog("Tried divide by 0");
  69. }
  70. System.out.println(calculator.multiply(4,4));
  71. System.out.println(calculator.subtract(4,5));
  72. calculator.printOperations();
  73. calculator.clearOperations();
  74. calculator.printOperations();
  75. }
  76.  
  77. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement