Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package org.example;
- import java.util.Scanner;
- public class homeworkChanges {
- public interface Operation {
- double perform(double num1, double num2);
- }
- public class Addition implements Operation {
- public double perform(double num1, double num2) {
- return num1 + num2;
- }
- }
- public class Subtraction implements Operation {
- public double perform(double num1, double num2) {
- return num1 - num2;
- }
- }
- public class Multiplication implements Operation {
- public double perform(double num1, double num2) {
- return num1 * num2;
- }
- }
- public class Division implements Operation {
- public double perform(double num1, double num2) {
- if (num2 != 0) {
- return num1 / num2;
- } else {
- throw new ArithmeticException("Cannot divide by zero");
- }
- }
- }
- public class CalculatorMenu {
- public void main(String[] args) {
- Scanner scanner = new Scanner(System.in);
- while (true) {
- System.out.println("Choose an operation:");
- System.out.println("1) Addition");
- System.out.println("2) Subtraction");
- System.out.println("3) Multiplication");
- System.out.println("4) Division");
- System.out.println("0) Exit");
- System.out.print("Enter your choice: ");
- int choice = scanner.nextInt();
- if (choice == 0) {
- System.out.println("Exiting the program...");
- break;
- }
- System.out.print("Enter first number: ");
- double num1 = scanner.nextDouble();
- System.out.print("Enter second number: ");
- double num2 = scanner.nextDouble();
- Operation operation = null;
- if (choice == 1) {
- operation = new Addition();
- } else if (choice == 2) {
- operation = new Subtraction();
- } else if (choice == 3) {
- operation = new Multiplication();
- } else if (choice == 4) {
- operation = new Division();
- } else {
- System.out.println("Invalid command.");
- continue;
- }
- System.out.print("Do you want to solve another task? (yes/no): ");
- String response = scanner.next();
- if (!response.equalsIgnoreCase("yes")) {
- break;
- }
- }
- scanner.close();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement