Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: peterfly en 29 Junio 2011, 00:26 am



Título: calculadora de 30 digitos
Publicado por: peterfly en 29 Junio 2011, 00:26 am
e estado buscando por internet lo de acer una calculadora personalizada... me refiero a lo de poner yo las operaciones i el resultado dentro del lenguaje... para que me sirve??? para acer una calculadora con los digitos que quiera... es decir que si tengo las operaciones echas a mano solo tengo que introducirlas el programa i cuando pongo dicha operacion al ejecutar el programa me sale el resultado, i si pongo una operacion que no esté guardada dentro del programa me dice "error" (como en las calculadoras que se venden en la papeleria, pero con la diferencia que cuando mas operaciones tenga i mas los digitos tenga guardado dentro de dicho programa, mas operaciones podra acer cuando lo ejecuto...)

lo malo es que este tipo de lenguaje en programacion no lo e encontrado... si fueseis tan amables de ayudarme os lo agradeceria....


Título: Re: calculadora de 30 digitos
Publicado por: Edu en 29 Junio 2011, 00:40 am
eh? entendi mal o quieres guardar todas las cuentas en un programa? xD, porque no hacer que el programa te haga la cuenta que ingresas?


Título: Re: calculadora de 30 digitos
Publicado por: peterfly en 29 Junio 2011, 00:49 am
me refiero a que si pones por ejemplo 1+10000000000000000 cuando lo estas programando, luego al ejecutar el programa i pones esa suma te aparece el resultado... i todas las operaciones asta ese numero

es que no se como decirlo por que no se muxo de programar con c++ pero lo que si se es que los programas que e encontrado tienen limitacion de digitos i io lo quiero con muchos mas digitos que en esas calculadoras


Título: Re: calculadora de 30 digitos
Publicado por: leogtz en 29 Junio 2011, 00:53 am
A ver si entendí.

¿Tu quieres una calculadora que trabaje con cualquier cantidad de digitos y que las operaciones anteriores se vayan guardando?


Título: Re: calculadora de 30 digitos
Publicado por: peterfly en 29 Junio 2011, 01:08 am
mas o menos... pero no me referia a que las operaciones se guardasen en algun sitio... lo que io me referia es que pones en eso que se escribe el lenguaje los calculos uno por uno i asi si me esfuerzo un poko tendre una calculadora con 30 digitos o mas... se que es muxo trabajo pero con el tiempo que tengo libre...

por ejemplo... en el lenguaje se pone
#include <stdio.h>
main()
{
int a,b;
printf("ponga un numero:");
scanf(" %d",&a);

printf("ponga otro numero:");
scanf(" %d",&);

printf("el resultado de la suma es %d",a+b);
}


lo malo de este codigo es que cuando lo ejecutas e intentas acer una suma de mas de 10 digitos no puedes, por eso pregunto lo de ir poniendo cada suma, resta, multiplicacion o division una por una asta que llegue asta el numero que io quiera que en este caso son 30 digitos (en un principio, por que quiero que tenga mas de 30 digitos i si puedo llegar a mil digitos, mejor de lo mejor)
aunque tambien estaria bien que se guardasen


Título: Re: calculadora de 30 digitos
Publicado por: peterfly en 29 Junio 2011, 01:10 am
aunque con un ejemplo de 2 digitos me sirve


Título: Re: calculadora de 30 digitos
Publicado por: leogtz en 29 Junio 2011, 01:26 am
Mira, puedes trabajar con unsigned long long int, para que te permita trabajar con números más largos.

Código
  1. #include <stdio.h>
  2. int main(void)
  3. {
  4.    unsigned long long int a,b;
  5.    printf("ponga un numero: ");
  6.    scanf("%llu", &a);
  7.  
  8.    printf("ponga otro numero: ");
  9.    scanf(" %llu",&b);
  10.  
  11.    printf("el resultado de la suma es %llu", a+b);
  12.    getchar();
  13.    return 0;
  14. }
  15.  

O tendrás que buscar alguna libreria tipo "BigInteger" para C.


Título: Re: calculadora de 30 digitos
Publicado por: Acermax en 29 Junio 2011, 02:33 am
Como dice Leo, si quieres hacer operaciones en números MUY grandes  tendrás que buscar o programar una clase (no es complicado) que utilice vectores para guardar dígitos, y también programar las operaciones.


Título: Re: calculadora de 30 digitos
Publicado por: peterfly en 29 Junio 2011, 11:16 am
como ago para programar las operacones??? solo necesito un ejemplo por que no lo encuentro en ningun sito


Título: Re: calculadora de 30 digitos
Publicado por: Edu en 29 Junio 2011, 16:10 pm
Lee un buen tutorial de C++ asi aprenderas a programar, que es lo primero que tienes que hacer, luego nos cuentas


Título: Re: calculadora de 30 digitos
Publicado por: peterfly en 29 Junio 2011, 20:28 pm
tendiendo lo siguiente como puedo darle valor a las letras "a" y "b"???:  

Código:
   float a,b,;

   cout<<"ingrese el primer numero"<<endl;
   cin>>a; /*como puedo dar una equivalencia a la letra el numero 1
           y que no me pida un numero cualquiera???*/
  
   cout<<"ingrese el segundo numero"<<endl;
   cin>>b;  /*como puedo dar una equivalencia a la letra el numero 0
            y que no me pida un numero cualquiera???*/
  
   cout<<"el resultado es:"<<endl<<1<<endl;

   system("PAUSE");
   return EXIT_SUCCESS;


Título: Re: calculadora de 30 digitos
Publicado por: peterfly en 29 Junio 2011, 20:40 pm
por que e intentado poner lo siguiente i me dice error:

Código:
float a,b,;

   cout<<"ingrese el primer numero"<<endl;
   cin>>a==1; /*errir*/
   
   cout<<"ingrese el segundo numero"<<endl;
   cin>>b==0;  /*error*/
   
   cout<<"el resultado es:"<<endl<<1<<endl;

   system("PAUSE");
   return EXIT_SUCCESS;
}


Título: Re: calculadora de 30 digitos
Publicado por: Edu en 29 Junio 2011, 20:44 pm
Repito.. lee un tutorial y luego ven a preguntar una duda con algo que no se diga mil veces en un tutorial, porque la idea es aprender y por eso intento orientarte de como se debe aprender..

Hasta creo que luego que leas entenderas que lo que quieres hacer es insolito, asique a leer y leer ;)


Título: Re: calculadora de 30 digitos
Publicado por: peterfly en 29 Junio 2011, 22:20 pm
no me podrias facilitar el codigo para dar valores a las letras???

solo me falta eso...


Título: Re: calculadora de 30 digitos
Publicado por: farresito en 29 Junio 2011, 23:22 pm
Aquí no se facilitan códigos. El error está en que cin lo que hace es guardar en la variable indicada cualquier valor que introduces. En ningún caso debes, dentro del cin, asignarle un valor a una variable.

Estás haciendo errores muy básicos. Cómo te han dicho, léete un tutorial de C/C++, hay demasiados por internet.


Título: Re: calculadora de 30 digitos
Publicado por: peterfly en 30 Junio 2011, 19:04 pm
esto es una variable que dices???

Código:
#include <stdio.h>
#include <cstdlib>
#include <iostream>
main()
{
int a,b,c;

printf("ponga un numero:");
scanf(" %d",&a);

printf("ponga otro numero:");
scanf(" %d",&b);

printf("1. suma \n");
printf("2. resta \n");
printf("3. multiplicacio \n");
printf("4. divisio \n");

printf("elija una opcion:");
scanf(" %d",&c);

if(c==1)
printf("la suma es: %d",a+b);

else if(c==2)
printf("la resta es: %d",a-b);

else if(c==3)
printf("la multiplicacio es: %d",a*b);

else if(c==4)
printf("la divisio es: %d",a/b);

else
printf("no es una opcion valida");

    system("PAUSE");
    return EXIT_SUCCESS;
}


Título: Re: calculadora de 30 digitos
Publicado por: leogtz en 1 Julio 2011, 00:12 am
esto es una variable que dices???

Código:
#include <stdio.h>
#include <cstdlib>
#include <iostream>
main()
{
int a,b,c;

printf("ponga un numero:");
scanf(" %d",&a);

printf("ponga otro numero:");
scanf(" %d",&b);

printf("1. suma \n");
printf("2. resta \n");
printf("3. multiplicacio \n");
printf("4. divisio \n");

printf("elija una opcion:");
scanf(" %d",&c);

if(c==1)
printf("la suma es: %d",a+b);

else if(c==2)
printf("la resta es: %d",a-b);

else if(c==3)
printf("la multiplicacio es: %d",a*b);

else if(c==4)
printf("la divisio es: %d",a/b);

else
printf("no es una opcion valida");

    system("PAUSE");
    return EXIT_SUCCESS;
}

¿Variable?


Título: Re: calculadora de 30 digitos
Publicado por: Edu en 1 Julio 2011, 19:08 pm
Mira, aca aprendemos todos, si quieres aprender bien, ya te recomendamos que agarres un buen tutorial y leas, si no haces eso.. lo siento pero toda una clase de variables por ejemplo no te vamos a dar, habiendo muchos tutoriales para leer.


Título: Re: calculadora de 30 digitos
Publicado por: Danyel_Casvill en 2 Julio 2011, 01:02 am
Mira, aca aprendemos todos, si quieres aprender bien, ya te recomendamos que agarres un buen tutorial y leas, si no haces eso.. lo siento pero toda una clase de variables por ejemplo no te vamos a dar, habiendo muchos tutoriales para leer.

Hazle caso, creo que con lo que preguntas nos estas dando a saber que no te has leido con paciencia un tutorial, o no te has leido ninguno, aqui tienes varios tutoriales:
http://foro.elhacker.net/programacion_cc/librospapers_cc-t296234.0.html



Título: Re: calculadora de 30 digitos
Publicado por: Nork en 2 Julio 2011, 01:22 am
Si quieres hacer operaciones con números muy grandes utiliza strings (o similares) y no variables numéricas ya que estas tienen una capacidad máxima. Por cierto (ya que lo he visto por el post) evita utilizar floats para cálculos ya que perderas en bastantes casos precisión.