elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  mu pueden ver este programa en c++ y ver si esta bueno
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: mu pueden ver este programa en c++ y ver si esta bueno  (Leído 3,823 veces)
eduardo17445

Desconectado Desconectado

Mensajes: 162


Ver Perfil
mu pueden ver este programa en c++ y ver si esta bueno
« 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;
              }


En línea

avesudra


Desconectado Desconectado

Mensajes: 724


Intentando ser mejor cada día :)


Ver Perfil
Re: mu pueden ver este programa en c++ y ver si esta bueno
« Respuesta #1 en: 5 Marzo 2013, 01:25 am »

El compilador(GCC) dice esto(con esto tendrías que tener suficiente para empezar a corregir):
Código:
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
  • Los parásitos en el programa se refieren al carácter 'ñ' que no se puede utilizar para nombrar una variable.
  • Lo del error "expected primary-expression befor ' 'token" es por lo de la ñ también.
  • En la función multiplicación te faltan pasar 2 argumentos.
  • Bueno y lo demás es la definición de variables que te faltan mucho.
Como consejos:
  • Sustituir el :
Código
  1. system("pause");
dado que es lento y no es portable entre los Sistemas Operativos por:
Código
  1. std::cin.get();
O:
Código
  • Organiza el código e indéntalo.
  • Utiliza un switch en vez de tantos if:
Código
  1. char h;
  2. //... ES UN CÓDIGO A MODO DE EJEMPLO
  3. switch (h)
  4. {
  5. case 'a':
  6.   cout << "h is a"; break;
  7. case 'b':
  8.   cout << "h is b"; break;
  9. case .....
  10. }
  • Las librerías de C en C++ se incluyen así:
Código
  1. #include<cmath>
Y no así:
Código
  1. #include <math.h>
    La función de la potencia la sabes ya ¿no? la utilizas en tu código...  :silbar:

    ¡Un saludo!


    « Última modificación: 5 Marzo 2013, 01:32 am por avesudra » En línea

    Regístrate en
    rir3760


    Desconectado Desconectado

    Mensajes: 1.639


    Ver Perfil
    Re: mu pueden ver este programa en c++ y ver si esta bueno
    « Respuesta #2 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
    1. 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
    En línea

    C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
    --
    Kernighan & Ritchie, The C programming language
    NoLife

    Desconectado Desconectado

    Mensajes: 17



    Ver Perfil
    Re: mu pueden ver este programa en c++ y ver si esta bueno
    « Respuesta #3 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.
    « Última modificación: 5 Marzo 2013, 03:01 am por NoLife » En línea

    “Cualquier tonto puede escribir código que la PC entienda. Los buenos programadores escriben código que los humanos pueden entender.” – Martin Fowler
    Páginas: [1] Ir Arriba Respuesta Imprimir 

    Ir a:  

    Mensajes similares
    Asunto Iniciado por Respuestas Vistas Último mensaje
    Me pueden ayudar con este programa de metodos y constructores
    Ejercicios
    DomInYK 1 5,630 Último mensaje 10 Octubre 2011, 04:43 am
    por s00rk
    me pueden ver este programa a ver en c++
    Programación C/C++
    eduardo17445 2 5,721 Último mensaje 14 Junio 2012, 20:41 pm
    por elkiy
    me pueden revisar a ver si esta bien este programa en c++
    Programación C/C++
    eduardo17445 1 2,926 Último mensaje 17 Junio 2012, 14:11 pm
    por 0xDani
    ¿Me pueden ayudar con este programa?
    Programación C/C++
    ivorybom 2 2,582 Último mensaje 3 Diciembre 2012, 00:23 am
    por ivorybom
    Pueden ayudarme con este programa.
    Ingeniería Inversa
    franck12 7 5,439 Último mensaje 24 Mayo 2013, 19:03 pm
    por franck12
    WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines