Problema con calculadora basica!!!!!!!!!!

Iniciado por prometheus48, 9 Octubre 2011, 11:51 AM

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

prometheus48

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!
"Si tú tienes una manzana, y yo otra, y las intercambiamos, tu sigues teniendo una manzana, y yo sigo teniendo una manzana.
Pero, si tu tienes una idea, y yo otra, y nos las intercambiamos, tu tienes dos ideas, y yo tengo dos ideas"
The knowledge is free

madpitbull_99

Algunas sugerencias:

- Utiliza las etiquetas [ code] 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.





«Si quieres la paz prepárate para la guerra» Flavius Vegetius


[Taller]Instalación/Configuración y Teoría de Servicios en Red

prometheus48

"Si tú tienes una manzana, y yo otra, y las intercambiamos, tu sigues teniendo una manzana, y yo sigo teniendo una manzana.
Pero, si tu tienes una idea, y yo otra, y nos las intercambiamos, tu tienes dos ideas, y yo tengo dos ideas"
The knowledge is free

madpitbull_99

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.




«Si quieres la paz prepárate para la guerra» Flavius Vegetius


[Taller]Instalación/Configuración y Teoría de Servicios en Red

prometheus48

"Si tú tienes una manzana, y yo otra, y las intercambiamos, tu sigues teniendo una manzana, y yo sigo teniendo una manzana.
Pero, si tu tienes una idea, y yo otra, y nos las intercambiamos, tu tienes dos ideas, y yo tengo dos ideas"
The knowledge is free