Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package a_Zadania.a_Dzien_1.d_Konstruktor;
- import a_Zadania.a_Dzien_1.c_Metody.Person;
- import java.lang.reflect.Array;
- import java.text.DecimalFormat;
- import java.util.ArrayList;
- public class Calculator {
- private ArrayList<String> log = new ArrayList<>();
- public Calculator() {
- }
- public double add(double num1, double num2)
- {
- double result = num1 + num2;
- log.add("added " + num1 + " to " + num2 + " got " + result);
- return result;
- }
- public double multiply(double num1, double num2)
- {
- double result = num1 * num2;
- log.add("multiplied " + num1 + " with " + num2 + " got " + result);
- return result;
- }
- public double subtract(double num1, double num2)
- {
- double result = num1 - num2;
- log.add("subtracted " + num1 + " from " + num2 + " got " + result);
- return result;
- }
- public double divide(double num1, double num2) throws ArithmeticException
- {
- DecimalFormat df = new DecimalFormat("#.##");
- if(num2==0) throw new ArithmeticException();
- double result = num1 / num2;
- log.add("divided " + num1 + " by " + num2 + " got " + df.format(result));
- return result;
- }
- public void printOperations()
- {
- System.out.println("==========Operacje=========");
- log.forEach(System.out::println);
- System.out.println("===========================");
- }
- public void clearOperations()
- {
- System.out.println("Wyczyszczono operacje");
- log.clear();
- }
- public void addToLog(String message)
- {
- log.add(message);
- }
- public static void main(String[] args) {
- Calculator calculator = new Calculator();
- System.out.println(calculator.add(2,2));
- try {
- System.out.println(calculator.divide(2,0));
- } catch (ArithmeticException e) {
- System.out.println("Nie dzieli sie przez 0");
- calculator.addToLog("Tried divide by 0");
- }
- System.out.println(calculator.multiply(4,4));
- System.out.println(calculator.subtract(4,5));
- calculator.printOperations();
- calculator.clearOperations();
- calculator.printOperations();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement