Menu
Coddy logo textTech

Resumen - Calculadora simple

Parte de la sección Programación Orientada a Objetos del Journey de C++ de Coddy — lección 11 de 104.

challenge icon

Desafío

Difícil

Construye una clase Calculator completa que combine todos los conceptos que has aprendido:

  • Archivos de cabecera/fuente — Separación de declaración e implementación
  • Namespace — Coloca la clase dentro de CalcApp
  • Atributos privadosname (string), memory (int), operationCount (int)
  • Constructores — Parametrizado (name) y por defecto ("Standard")
  • Puntero this — Usa this-> para todo el acceso a miembros
  • Métodosadd, subtract, multiply, divide (cada uno almacena el resultado en memory e incrementa el conteo de operaciones)
  • GettersgetName(), getMemory(), getOperationCount()

divide debe devolver 0 cuando se divide por cero.

Pruébalo tú mismo

#include <iostream>
#include "Calculator.h"

int main() {
    std::string name;
    int a, b;
    std::getline(std::cin, name);
    std::cin >> a >> b;
    
    CalcApp::Calculator calc(name);
    
    std::cout << "Calculator: " << calc.getName() << std::endl;
    std::cout << "Memory: " << calc.getMemory() << std::endl;
    std::cout << "Add: " << calc.add(a, b) << std::endl;
    std::cout << "Subtract: " << calc.subtract(a, b) << std::endl;
    std::cout << "Multiply: " << calc.multiply(a, b) << std::endl;
    std::cout << "Divide: " << calc.divide(a, b) << std::endl;
    std::cout << "Divide by zero: " << calc.divide(a, 0) << std::endl;
    std::cout << "Memory: " << calc.getMemory() << std::endl;
    std::cout << "Operations: " << calc.getOperationCount() << std::endl;
    return 0;
}

Todas las lecciones de Programación Orientada a Objetos