Resultados 1 al 6 de 6

Tema: Calculadora en C++ [Utilizando Switch y Funciones]

  1. #1
    Sin vida social Avatar de KarmaPolice
    Ubicación
    Karkand
    Mensajes
    371

    Post Calculadora en C++ [Utilizando Switch y Funciones]

    Buenas!

    Dejé finalmente VB.NET y he empezado con C++. Uso Code::Blocks para compilar y Notepad++ para escribir el programa.

    Después de ver una serie de videotutoriales, me he puesto a hacer una simple calculadora basada en terminal, por supuesto, que permite sumar, restar, mutliplicar y dividir con dos valores, utilizando funciones con valor de retorno y la sentencia switch.

    Dejo el source code:

    Código:
    #include <iostream>
    #include <cmath>
    #include <cstdlib>
    using namespace std;
    double Sumar(double,double);
    double Restar(double,double);
    double Multiplicar(double,double);
    double Dividir(double,double);
    // - Creado por KarmaPolice
    
    
    int main()
    {
        
        cout << "-------- Calculadora C++ --------" << endl;
        cout << "---------------------------------" << endl;
        
        double val1;
        cout << "Introduce el primer valor: ";
        cin >> val1;
        double val2;
        cout << "Introduce el segundo valor: ";
        cin >> val2;
        cout << "---------------------------------" << endl;
        int operador;
        cout << "Sumar (1), Restar (2), Multiplicar (3) o Dividir (4)?: ";
        cin >> operador;
        
        switch(operador)
        {
            case 1:
                cout << "\n";
                cout << ">>>>>--- " << Sumar(val1,val2) << " ---<<<<<" << endl;
                cout << "\n";
            break;
            case 2:
                cout << "\n";
                cout << ">>>>>--- " << Restar(val1,val2) << " ---<<<<<" << endl;
                cout << "\n";
            break;
            case 3:
                cout << "\n";
                cout << ">>>>>--- " << Multiplicar(val1,val2) << " ---<<<<<" << endl;
                cout << "\n";
            break;
            case 4:
                cout << "\n";
                cout << ">>>>>--- " << Dividir(val1,val2) << " ---<<<<<" << endl;
                cout << "\n";
            break;
        }
        
        system("pause");
        return 0;
    }
    
    
    double Sumar(double x,double y)
    {
        return x + y;
    }
    
    
    double Restar(double x,double y)
    {
        return x - y;
    }
    
    
    double Multiplicar(double x,double y)
    {
        return x * y;
    }
    
    
    double Dividir(double x,double y)
    {
        return x / y;
    }
    Última edición por KarmaPolice; 17/03/2012 a las 19:34

  2. #2
    El señor de los forillos Avatar de oMega_3097
    Ubicación
    León, España
    Edad
    26
    Mensajes
    2,590

    Predeterminado Re: Calculadora en C++ [Utilizando Switch y Funciones]

    double resultado;
    resultado = x + y;
    return resultado;

    return x + y;

    ¿No te funciona así y es más simple?

  3. #3
    Sin vida social Avatar de KarmaPolice
    Ubicación
    Karkand
    Mensajes
    371

    Predeterminado Re: Calculadora en C++ [Utilizando Switch y Funciones]

    Sí, claro, pero hay alguna diferencia en cuanto a rendimiento o peso del programa? Quiero tenerlo todo bien organizado, y eso xD

  4. #4
    El señor de los forillos Avatar de oMega_3097
    Ubicación
    León, España
    Edad
    26
    Mensajes
    2,590

    Predeterminado Re: Calculadora en C++ [Utilizando Switch y Funciones]

    Dependerá del compilador, no lo sé, pero tú estás realizando más operaciones que con la línea que he indicado: declarar variable, resolución de operación y escritura en la variable, lectura de la variable y retorno de valor. De esta otra forma estás obligando la resolución de la operación y el retorno, fin.

    Aparte de que no necesitas para nada una variable en esas funciones: no trabajas con ese valor, ni realizas otros cálculos a posteriori, sólo te interesa el valor final. Por eso carece de sentido usar una variable. Si lo ves mejor déjalo así, pero que sepas que no es necesario.
    Última edición por oMega_3097; 17/03/2012 a las 14:57

  5. #5
    Sin vida social Avatar de KarmaPolice
    Ubicación
    Karkand
    Mensajes
    371

    Predeterminado Re: Calculadora en C++ [Utilizando Switch y Funciones]

    Me lo has dejado más claro, ciertamente realiza más operaciones.

    Ahora lo cambio! Gracias!

  6. #6

    Predeterminado Re: Calculadora en C++ [Utilizando Switch y Funciones]

    pon el menú en una función a parte que retorne la opción elegida y que sea un 0 por ejemplo para Salir.

    y en el bucle principal haces un

    Código:
    while(code=menu()!=OPCION_SALIR){
    ... //tu switch
    }
    Otra cosa, para que todo sea más sencillo, define los valores en un .h

    Código:
    #define	SALIR	0
    #define	SUMAR	1
    #define	RESTAR	2
    #define	MULTI	3
    #define	DIVIDIR	4
    y en todo el código utiliza estas "MACROS" para que sea todo mucho más legible, poner en mitad de un código un número cualquiera sin justificación, se llama número mágico porque cualquier programador nuevo que coja el código no va a entender que significa!

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •