Menu
Coddy logo textTech

Итоги — Простой калькулятор

Часть раздела Объектно-ориентированное программирование путешествия по Java на Coddy — урок 9 из 87.

challenge icon

Задание

Сложно

Создайте полноценный класс Calculator, использующий все изученные концепции:

  • Поля: Приватные поля для name (String), memory (double), operationCount (int)
  • Конструкторы: Параметризованный конструктор и конструктор по умолчанию, использующий цепочку вызовов this()
  • Ключевое слово this: Используйте this для присвоения значений полям и доступа к ним в методах
  • Геттеры: getName(), getMemory(), getOperationCount()
  • Методы: add, subtract, multiply, divide, power

Метод add сохраняет свой результат в memory. Все методы увеличивают operationCount. Метод divide возвращает 0 при делении на ноль. Метод power использует Math.pow().

Попробуйте сами

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String name = scanner.nextLine();
        double num1 = Double.parseDouble(scanner.nextLine());
        double num2 = Double.parseDouble(scanner.nextLine());
        
        Calculator calc = new Calculator(name);
        
        System.out.println("Calculator: " + calc.getName());
        System.out.println("Memory: " + calc.getMemory());
        
        System.out.println("Add: " + calc.add(num1, num2));
        System.out.println("Subtract: " + calc.subtract(num1, num2));
        System.out.println("Multiply: " + calc.multiply(num1, num2));
        System.out.println("Divide: " + calc.divide(num1, num2));
        System.out.println("Divide by zero: " + calc.divide(num1, 0));
        System.out.println("Memory: " + calc.getMemory());
        System.out.println("Power: " + calc.power(num1, num2));
        System.out.println("Operations: " + calc.getOperationCount());
    }
}

Все уроки раздела Объектно-ориентированное программирование