Untitled

 avatar
unknown
plain_text
11 days ago
3.2 kB
1
Indexable
#include <iostream>
#include <iomanip> // Para formatear la salida
#include <locale.h>
using namespace std;

// Declaraci�n de clases
class Operacion {
protected:
    int valor1;
    int valor2;
    int resultado;

public:
    Operacion(int valor1 = 0, int valor2 = 0);
    int cargar1();
    int cargar2();
    void mostrarresultado();
};

class Suma : public Operacion {
public:
    Suma(int v1 = 0, int v2 = 0) : Operacion(v1, v2) {}
    void operar();
    void mostrarresultado();
};

class Resta : public Operacion {
public:
    Resta(int v1 = 0, int v2 = 0) : Operacion(v1, v2) {}
    void operar();
    void mostrarresultado();
};

// Definici�n del miembro constructor de la clase base Operacion
Operacion::Operacion(int v1, int v2) {
    valor1 = v1;
    valor2 = v2;
}

// Definici�n de los objetos de la clase Operacion
int Operacion::cargar1() {
    cout << "Ingrese el valor 1: ";
    cin >> valor1;
    return valor1;
}

int Operacion::cargar2() {
    cout << "Ingrese el valor 2: ";
    cin >> valor2;
    return valor2;
}

void Operacion::mostrarresultado() {
    cout << "El resultado de la operaci�n es: " << resultado << endl;
}

// Definici�n de los objetos de la clase Suma
void Suma::operar() {
    resultado = valor1 + valor2;
}

void Suma::mostrarresultado() {
    cout << "La sumatoria de los valores es: " << resultado << endl;
}

// Definici�n de los objetos de la clase Resta
void Resta::operar() {
    resultado = valor1 - valor2;
}

void Resta::mostrarresultado() {
    cout << "La resta de los valores es: " << resultado << endl;
}

// Flujo Principal
int main() {
	setlocale (LC_CTYPE, "spanish");
    int valor1, valor2;
    Operacion operacion;
    Suma suma;
    Resta resta;
    char opc, salir;

    cout<< "========================================\n"
		<< "  Bienvenido a la Calculadora B�sica    \n"
		<< "========================================\n\n";
	
    do {
        cout << "Seleccione la operaci�n a realizar:\n\n";
        cout << "  1. Suma\n";
        cout << "  2. Resta\n";
        cout << "  3. Salir\n\n";
        cout << "Ingrese su opci�n: ";
        cin >> opc;

        switch (opc) {
            case '1':
                cout << "\n--- Suma ---\n";
                suma.cargar1();
                suma.cargar2();
                suma.operar();
                cout << "\n�Operaci�n realizada con �xito!\n";
                suma.mostrarresultado();
                break;
            case '2':
                cout << "\n--- Resta ---\n";
                resta.cargar1();
                resta.cargar2();
                resta.operar();
                cout << "\n�Operaci�n realizada con �xito!\n";
                resta.mostrarresultado();
                break;
            case '3':
                cout << "\n�Gracias por usar la Calculadora B�sica! �Fuakata!\n";
                return 0;
            default:
                cout << "\nOpci�n no v�lida. Intente de nuevo.\n";
        }

        cout << "\n�Desea realizar otra operaci�n? (S/N): ";
        cin >> salir;

    } while (salir == 's' || salir == 'S');

    cout << "\n�Gracias por usar la Calculadora B�sica! �Fuakata!\n";
    return 0;
}

Editor is loading...
Leave a Comment