Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: prometheus48 en 9 Octubre 2011, 11:51 AM

Título: Problema con calculadora basica!!!!!!!!!!
Publicado por: prometheus48 en 9 Octubre 2011, 11:51 AM
Hola,
Estoy aprendiendo a programar desde hace tres semanas,
He hecho unas cuantas calculadoras, pero esta la decidi hacer con un menu,
Empeze a hacer el codigo, lo termine,
pero cuando lo compilo y ejecuto,
te sale el menu, pulso un numero pulso intro y salta de linea,
no entiendo donde esta el error,
Estoy haciendo esto por mi cuenta,
y clro no tengo a nadie a quien preguntar,
Epero que me respondan,
Copien el codigo y ejecutenlo,
y digan que corcho pasa con el menu,
o como podria mejorarlo,

//////////////////////////////////////////////////////
//Programa de calculadora (prometheus48@hotmail.com)//
/////////////////////////////////////////////////////

#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
     //Variables declaradas
    double a,b,c,d,e,f,g,h;
    float i,j,k,l,m,n;
    int o=0;
   
     //Pequeña informacion
    cout<<"Pandora Software ;)"<<endl;
    cout<<"Programa realizado por Samuel Dominguez Lorenzo"<<endl;
    cout<<"Cualquier error o sugerencia enviar correo a prometheus48@hotmail.com"<<endl;
    system("pause");
   
    //Punto de regreso para el goto(re-ejecutar)
    RETRY:
    system("cls");
   
    //Informacion acerca del orden de las operaciones
    cout<<"Menu"<<endl
        << "1.-Sumar" << endl
        << "2.- Multiplicar" << endl
        << "3.- Restar " << endl
        << "4.- Dividir" << endl
        << "5.- Al cuadrado" << endl
        << "6.- Al cubo" << endl
        << "7.- A la cuadra" << endl
        << "8.- A la quinta" << endl
        << "9.- A la sexta" << endl
        << "10.- A la septima" << endl;
    cin>>o;
   
    if(o==1)
       
    //Sumar
    cout<<"Introduzca numero sumar: ";
    cin>>a;
    cout<<"Introduzca segundo numero: ";
    cin>>b;
    cout<<"Resultado de la suma: "<<a+b<<endl;
     system("pause");
     goto RETRY;
     
     if(o==2)
     
    //Multiplicar
    cout<<"Introduzca numero multiplicar: ";
    cin>>c;
    cout<<"Introduzca segundo numero: ";
    cin>>d;
    cout<<"Resultado de la multiplicacion: "<<c*d<<endl;
     system("pause");
     goto RETRY;
     if(o==3)
     
    //Restar
    cout<<"Introduzca numero a restar: ";
    cin>>e;
    cout<<"Introduzca segundo numero: ";
    cin>>f;
    cout<<"Resultado de la resta: "<<e-f<<endl;
     system("pause");
     goto RETRY;
      if(o==4)
     
    //Dividir
    cout<<"Introduzca numero a dividir: ";
    cin>>g;
    cout<<"Introduzca segundo numero: ";
    cin>>h;
    cout<<"Resultado de la division: "<<g/h<<endl;
     system("pause");
     goto RETRY;
      if(o==5)
     
    //Al cuadrado
    cout<<"Introduzca el numero al cuadrado: ";
    cin>>i;
    cout<<"Resultado: "<<i*i<<endl;
     system("pause");
     goto RETRY;
      if(o==6)
     
    //Al cubo
    cout<<"Introduzca numero al cubo: ";
    cin>>j;
    cout<<"Resultado: "<<j*j*j<<endl;
     system("pause");
     goto RETRY;
      if(o==7)
     
    //A la cuadra
    cout<<"Introduzca numero a la cuadra: ";
    cin>>k;
    cout<<"Resultado: "<<k*k*k*k<<endl;
     system("pause");
     goto RETRY;
      if(o==8)
     
    //A la quinta
    cout<<"Introduzca un numero al la quinta: ";
    cin>>l;
    cout<<"Resultado: "<<l*l*l*l*l<<endl;
     system("pause");
     goto RETRY;
      if(o==9)
     
    //A la sexta
    cout<<"Introduzca numero a la sexta: ";
    cin>>m;
    cout<<"Resultado: "<<m*m*m*m*m*m<<endl;
     system("pause");
     goto RETRY;
      if(o==10)
   
    //A la sépima
    cout<<"Introduzca numero al la septima: ";
    cin>>n;
    cout<<"Resultado: "<<n*n*n*n*n*n*n<<endl;
     system("pause");
     goto RETRY;
     
                   
    //Pequeña informacion
    cout<<"Pandora Software ;)"<<endl;
    cout<<"Programa realizado por Samuel Dominguez Lorenzo"<<endl;
    system("pause");
    goto RETRY;
   
    system("PAUSE");
    return EXIT_SUCCESS;
}









Respondan!
Título: Re: Problema con calculadora basica!!!!!!!!!!
Publicado por: madpitbull_99 en 9 Octubre 2011, 13:01 PM
Algunas sugerencias:

- Utiliza las etiquetas [ code] (https://foro.elhacker.net/Themes/newgeneration/images/bbc/code.gif)cuando insertes código.
- Intenta sustituir los goto por funciones, en este programa, al ser corto es fácil de leer, pero imagínate que
tiene más de 1000 lineas.


Título: Re: Problema con calculadora basica!!!!!!!!!!
Publicado por: prometheus48 en 9 Octubre 2011, 13:14 PM
¿Y el error del menu?
Título: Re: Problema con calculadora basica!!!!!!!!!!
Publicado por: madpitbull_99 en 9 Octubre 2011, 13:28 PM
Acabo de probar una suma y funciona:

madpitbull@desktop:~/Escritorio$ g++ x.cpp
madpitbull@desktop:~/Escritorio$ ./a.out
Pandora Software ;)
Programa realizado por Samuel Dominguez Lorenzo
Cualquier error o sugerencia enviar correo a prometheus48@hotmail.com
sh: pause: not found
sh: cls: not found
Menu
1.-Sumar
2.- Multiplicar
3.- Restar
4.- Dividir
5.- Al cuadrado
6.- Al cubo
7.- A la cuadra
8.- A la quinta
9.- A la sexta
10.- A la septima
1
Introduzca numero sumar: 10
Introduzca segundo numero: 5
Resultado de la suma: 15
sh: pause: not found
sh: cls: not found
Menu
1.-Sumar
2.- Multiplicar
3.- Restar
4.- Dividir
5.- Al cuadrado
6.- Al cubo
7.- A la cuadra
8.- A la quinta
9.- A la sexta
10.- A la septima


Trata de agregar llaves a las condiciones if, como en este ejemplo:


if(o==1) {
//Sumar
cout<<"Introduzca numero sumar: ";
cin>>a;
cout<<"Introduzca segundo numero: ";
cin>>b;
cout<<"Resultado de la suma: "<<a+b<<endl;
system("pause");
goto RETRY;



}



if(o==2) {
//Multiplicar
cout<<"Introduzca numero multiplicar: ";
cin>>c;
cout<<"Introduzca segundo numero: ";
cin>>d;
cout<<"Resultado de la multiplicacion: "<<c*d<<endl;
system("pause");
goto RETRY;

}


if(o==3) {
//Restar
cout<<"Introduzca numero a restar: ";
cin>>e;
cout<<"Introduzca segundo numero: ";
cin>>f;
cout<<"Resultado de la resta: "<<e-f<<endl;
system("pause");
goto RETRY;

}


Con este ejemplo ha funcionado como debería.

Título: Re: Problema con calculadora basica!!!!!!!!!!
Publicado por: prometheus48 en 9 Octubre 2011, 14:48 PM
Muchisimas gracias pitbull!
Saludos