Error calculadora en C++

Iniciado por Nitch, 7 Octubre 2011, 21:06 PM

0 Miembros y 1 Visitante están viendo este tema.

Nitch

Tengo un programa que ami entender esta bien pero me salta errores en comparacion de variables. Se que este programa se puede hacer en switch_case, pero quiero aprender hacerlo asin, ya que en switch case me parece bastante mas facil y con este veo k por lo menos lo complico yo mismo un poco.

#include <iostream>
using namespace std;

int sum(int x, int y);
int rest(int x, int y);
int mult(int x, int y);
int divi(int x, int y);

int main()
{
    system("color 0C");
    int num1, num2, suma, resta, multiplicacion, eleccion, division;
    inicio:
    cout << "*****CALCULADORA*****" << endl;
    cout << "Indica que desea hacer: (suma, resta, multiplicacion, division) " << endl;
    cin >> eleccion;
    if(eleccion=="suma")
    {
                        cout << "Escriba un numero: " << endl;
                        cout <<"Escriba otro numero: " << endl;
                        suma=sum(num1, num2);
                        cout << num1 <<" + " << num2 <<" = " << suma << endl;
    }
    if(eleccion=="resta")
    {
                         resta=rest(num1, num2);
                         cout << num1 <<" - " << num2 <<" = " << resta << endl;
    }
    if(eleccion=="multiplicacion")
    {
                         multiplicacion=mult(num1, num2);
                         cout << num1 <<" * " << num2 <<" = " << multiplicacion << endl;
    }
    if(eleccion=="division")
    {
                            division=divi(num1, num2);
                            cout << num1 <<" * " << num2 <<" = " << division << endl;
    }
    else
    {
                            cout << "No has introducido numeros o palabras correctas." << endl;
                            goto inicio;
    }
    system("pause");
    return 0;
}

int sum( int x, int y)
{
    return (x+y);
}

int rest(int x, int y)
{
    return (x-y);
}

int mult(int x, int y)
{
    return (x*y);
}

int divi(int x, int y)
{
    return (x/y);
}




Si alguien ve el fallo le agradeceria que respondiera este post. Gracias

Queta

Estás comparando enteros con cadenas :rolleyes:.
"Intenta no volverte un hombre de éxito, sino volverte un hombre de valor." Albert Einstein.

Nitch

es verdad, pero al poner las cadenas con string, y eleccion tambien en string, me sigue sin funcionar, y estaria comprando solo cadenas, y no tendria que dar ese error no? Gracias por la ayuda

Queta

"Intenta no volverte un hombre de éxito, sino volverte un hombre de valor." Albert Einstein.

LearningSpanishProgrammer

Nitch, si estas usando C++ entonces use "string"

Código (cpp) [Seleccionar]

#include <iostream>

std::string name;
std::cin >> name;

if (name == "alguna cosa")
{
}
Estoy aprendiendo español, y tu estas aprendiendo programación

Nitch

Muchas gracias a todos, me ha servido de gran ayuda