Un programa con una calculadora todo en 1
Aquí te muestro un ejemplo de un programa de calculadora todo en uno en C++: ```cpp #include <iostream> #include <cmath> // Función para realizar operaciones básicas double calcular(double num1, double num2, char operador) { switch (operador) { case '+': return num1 + num2; case '-': return num1 - num2; case '*': return num1 * num2; case '/': if (num2 != 0) { return num1 / num2; } else { std::cerr << "Error: No se puede dividir por cero." << std::endl; return 0; } case '%': if (num2 != 0) { return fmod(num1, num2); } else { std::cerr << "Error: No se puede dividir por cero." << std::endl; return 0; } default: std::cerr << "Error: Operador inválido." << std::endl; return 0; } } // Función para realizar operaciones de raíz cuadrada y potencia double calcularRaizCuadrada(double num) { if (num >= 0) { return sqrt(num); } else { std::cerr << "Error: No se puede calcular la raíz cuadrada de un número negativo." << std::endl; return 0; } } double calcularPotencia(double base, double exponente) { return pow(base, exponente); } int main() { int opcion; double num1, num2; while (true) { std::cout << "Calculadora todo en uno" << std::endl; std::cout << "1. Suma" << std::endl; std::cout << "2. Resta" << std::endl; std::cout << "3. Multiplicación" << std::endl; std::cout << "4. División" << std::endl; std::cout << "5. Resto" << std::endl; std::cout << "6. Raíz cuadrada" << std::endl; std::cout << "7. Potencia" << std::endl; std::cout << "8. Salir" << std::endl; std::cout << "Ingrese su opción: "; std::cin >> opcion; switch (opcion) { case 1: std::cout << "Ingrese el primer número: "; std::cin >> num1; std::cout << "Ingrese el segundo número: "; std::cin >> num2; std::cout << "Resultado: " << calcular(num1, num2, '+') << std::endl; break; case 2: std::cout << "Ingrese el primer número: "; std::cin >> num1; std::cout << "Ingrese el segundo número: "; std::cin >> num2; std::cout << "Resultado: " << calcular(num1, num2, '-') << std::endl; break; case 3: std::cout << "Ingrese el primer número: "; std::cin >> num1; std::cout << "Ingrese el segundo número: "; std::cin >> num2; std::cout << "Resultado: " << calcular(num1, num2, '*') << std::endl; break; case 4: std::cout << "Ingrese el primer número: "; std::cin >> num1; std::cout << "Ingrese el segundo número: "; std::cin >> num2; std::cout << "Resultado: " << calcular(num1, num2, '/') << std::endl; break; case 5: std::cout << "Ingrese el primer número: "; std::cin >> num1; std::cout << "Ingrese el segundo número: "; std::cin >> num2; std::cout << "Resultado: " << calcular(num1, num2, '%') << std::endl; break; case 6: std::cout << "Ingrese el número: "; std::cin >> num1; std::cout << "Resultado: " << calcularRaizCuadrada(num1) << std::endl; break; case 7: std::cout << "Ingrese la base: "; std::cin >> num1; std::cout << "Ingrese el exponente: "; std::cin >> num2; std::cout << "Resultado: " << calcularPotencia(num1, num2) << std::endl; break; case 8: std::cout << "Adiós!" << std::endl; return 0; default: std::cout << "Opción inválida. Por favor, inténtelo de nuevo." << std::endl; } } return 0; } ``` Este programa ofrece las siguientes opciones: * Suma * Resta * Multiplicación * División * Resto * Raíz cuadrada * Potencia * Salir Cada opción se selecciona mediante un número del 1 al 8. El programa solicita los números necesarios para realizar la operación y muestra el resultado en la consola. Es importante mencionar que este programa utiliza funciones para realizar las operaciones básicas y las operaciones de raíz cuadrada y potencia. Esto hace que el código sea más organizado y fácil de mantener.