Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: eduardo17445 en 4 Marzo 2013, 23:46 PM

Título: mu pueden ver este programa en c++ y ver si esta bueno
Publicado por: eduardo17445 en 4 Marzo 2013, 23:46 PM
//programa que simule una pequeña calculadora que implementa las siguientes operaciones
//multiplicacion,suma,resta,divicion,potencia,raiz
// otra cosa como es la formula de la potencia

#include <iostream>
#include <math.h>
using namespace std;
int a,b,c=0;
void multiplicacion(float a,float b,float c=0)
{
     c=a*b;
     c=c;

     cout<<"introduzca el numero uno";
     cin>>a;
     cout<<"introduzca el numero dos";
     cin>>b;
     cout<<" ="<<c;
 
}
     void suma(int d ,int e, int f=0)
     {
         f=d*e;
         f=f;
         
         cout<<"introduzca el numero uno";
        cin>>d;
        cout<<"introduzca el numero dos";
         cin>>e;
         cout<<"= ="<<f;
       
         }
         void resta (int g, int h, int j=0)
         {
             j=g-h;
             j=j;
              cout<<"introduzca el numero uno";
              cin>>g;
              cout<<"introduzca el numero dos";
              cin>>h;
              cout<<"="<<j;
             
         }
         void division (int z,int k,int ñ=0)
         {
             ñ=z/k;
             ñ=ñ;
             cout<<"introduzca el numero uno";
              cin>>z;
              cout<<"introduzca el numero dos";
              cin>>k;
              cout<<"="<<ñ;
        }
       double raiz (int xa, int xb, int ya, int yb)
{
      double p1,p2;
      double d;
      p1=pow((xa+xb),2);//calcular el cuadrado
      p2=pow((ya+yb),2);
      d=sqrt(p1+p2);
      return (d);
}
         int main()
         {
             int op;
             cout<<"introduzca una opcion";
             cin>>op;
             if(op==1)
             {
             cout<<"introduzca el numero uno";
             cin>>a;
              cout<<"introduzca el numero dos";
              cin>>b;
              cout<<"="<<multiplicacion(c);
              }
              if(op==1)
              {
                cout<<"introduzca el numero uno";
                 cin>>d;
                cout<<"introduzca el numero dos";
                  cin>>e;
                  cout<<"="<<suma(f);
              }
                  if(op==3)
                  {
                     cout<<"introduzca el numero uno";
                     cin>>g;
                     cout<<"introduzca el numero dos";
                     cin>>h;
                     cout<<" ="<<resta(j); 
                  }       
                  system ("pause");
                  return 0;
              }
Título: Re: mu pueden ver este programa en c++ y ver si esta bueno
Publicado por: avesudra en 5 Marzo 2013, 01:25 AM
El compilador(GCC) dice esto(con esto tendrías que tener suficiente para empezar a corregir):
main.cpp|40|error: '\303' parásito en el programa|
main.cpp|40|error: '\261' parásito en el programa|
main.cpp|42|error: '\303' parásito en el programa|
main.cpp|42|error: '\261' parásito en el programa|
main.cpp|43|error: '\303' parásito en el programa|
main.cpp|43|error: '\261' parásito en el programa|
main.cpp|43|error: '\303' parásito en el programa|
main.cpp|43|error: '\261' parásito en el programa|
main.cpp|48|error: '\303' parásito en el programa|
main.cpp|48|error: '\261' parásito en el programa|
main.cpp|42|error: expected primary-expression before '=' token|
main.cpp|43|error: expected primary-expression before '=' token|
main.cpp|43|error: expected primary-expression before ';' token|
main.cpp|48|error: expected primary-expression before ';' token|
main.cpp|70|error: faltan argumentos para la función 'void multiplicacion(float, float, float)'|
main.cpp|5|nota: se declara aquí|
main.cpp|77|error: 'e' no se declaró en este ámbito|
main.cpp|78|error: 'f' no se declaró en este ámbito|
main.cpp|83|error: 'g' no se declaró en este ámbito|
main.cpp|85|error: 'h' no se declaró en este ámbito|
main.cpp|86|error: 'j' no se declaró en este ámbito|
main.cpp|88|error: 'system' no se declaró en este ámbito|
||=== Build finished: 23 errors, 0 warnings (0 minutes, 0 seconds) ===|

Errores comentados por encima
Como consejos:
Código (cpp) [Seleccionar]
system("pause");
dado que es lento y no es portable entre los Sistemas Operativos por:
Código (cpp) [Seleccionar]
std::cin.get();
O:
getchar();
Código (cpp) [Seleccionar]
char h;
//... ES UN CÓDIGO A MODO DE EJEMPLO
switch (h)
{
case 'a':
  cout << "h is a"; break;
case 'b':
  cout << "h is b"; break;
case .....
}
Código (cpp) [Seleccionar]
#include<cmath>
Y no así:
#include <math.h>La función de la potencia la sabes ya ¿no? la utilizas en tu código...  :silbar:

¡Un saludo!
Título: Re: mu pueden ver este programa en c++ y ver si esta bueno
Publicado por: rir3760 en 5 Marzo 2013, 02:21 AM
Aparte de lo ya comentado por avesudra en todas las funciones (salvo "raiz") primero realizas la operación y solo después pides los datos cuando debe ser al revés. También tienes sentencias inútiles como esta (eliminalas):
Código (cpp) [Seleccionar]
j = j;

Y en la función "main" pides los operandos y a continuación los vuelves a pedir en las funciones. Tienes que pedirlos una sola vez.

Un saludo
Título: Re: mu pueden ver este programa en c++ y ver si esta bueno
Publicado por: NoLife en 5 Marzo 2013, 02:59 AM
seria más humano, de si vas a pedir ayuda, colocases algunos comentarios explicando tu código mientras programas cuando lo vayes a exponer. saludos.