• Domingo 15 de Diciembre de 2024, 00:25

Autor Tema:  Problema con Calculadora  (Leído 2304 veces)

alberto07

  • Nuevo Miembro
  • *
  • Mensajes: 9
    • Ver Perfil
Problema con Calculadora
« en: Martes 13 de Octubre de 2009, 21:34 »
0
Necesito hacer una calculadora que haga las funciones basicas (suma, resta, mult, dvis), cadenas de caracteres.

Pusiera alguien decirme como convierto los caracteres a numeros y luego a caracteres? Creo que con el cogico ASCII, puede hacerce.

r0d

  • Miembro activo
  • **
  • Mensajes: 37
  • Nacionalidad: fr
    • Ver Perfil
    • http://r0d.developpez.com/index-es.php
Re: Problema con Calculadora
« Respuesta #1 en: Martes 13 de Octubre de 2009, 21:56 »
0
Hola,

Tienes que hacerlo en C o en C++?

Dynyck

  • Nuevo Miembro
  • *
  • Mensajes: 17
    • Ver Perfil
Re: Problema con Calculadora
« Respuesta #2 en: Miércoles 14 de Octubre de 2009, 01:07 »
0
En c, puedes utilizar:

Código: Text
  1. int atoi ( const char * str );
  2.  

alberto07

  • Nuevo Miembro
  • *
  • Mensajes: 9
    • Ver Perfil
Re: Problema con Calculadora
« Respuesta #3 en: Miércoles 14 de Octubre de 2009, 03:05 »
0
Es en C, me han hablado de atoi, pero hay otra de la cual no me acuerdo la cual me lo vuelve a char nuevamente, ya que la calculadora debe recibir dos cadenas y devolver el resultado como cadena tambien. Ademas en que libreria estos se encuentran. No tengo ni idea de como comenzar.

Dynyck

  • Nuevo Miembro
  • *
  • Mensajes: 17
    • Ver Perfil
Re: Problema con Calculadora
« Respuesta #4 en: Miércoles 14 de Octubre de 2009, 03:52 »
0
Tal vez sea:

Código: Text
  1. char *  itoa ( int value, char * str, int base );
  2.  

m0skit0

  • Miembro de PLATA
  • *****
  • Mensajes: 2337
  • Nacionalidad: ma
    • Ver Perfil
    • http://fr33kk0mpu73r.blogspot.com/
Re: Problema con Calculadora
« Respuesta #5 en: Miércoles 14 de Octubre de 2009, 17:48 »
0
Ojo con itoa(), no es estándar... De todas formas, una función para pasar de entero a cadena de caracteres no es muy difícil de programar y te vendría bien para practicar.

alberto07

  • Nuevo Miembro
  • *
  • Mensajes: 9
    • Ver Perfil
Re: Problema con Calculadora
« Respuesta #6 en: Jueves 15 de Octubre de 2009, 03:35 »
0
Pretendo hacer la multiplicacion por sumas sucesivas, para eso necesito sumar el N1 las veces que sea N2, para eso necesito convertir un arreglo char en un solo numero entero.

Epa

  • Miembro MUY activo
  • ***
  • Mensajes: 242
  • Nacionalidad: ar
    • Ver Perfil
Re: Problema con Calculadora
« Respuesta #7 en: Jueves 15 de Octubre de 2009, 18:00 »
0
Se suele decir que no tiene sentido reinventar la rueda, pero a veces esta bueno para practicar un poco, como ya dijeron arriba.

Aca te dejo dos pedacitos de codigos simples que hacen eso. Probablemente no sea la mejor forma ni la mas optima, si queres fijate como lo podes mejorar.

De cadena a numero
Código: C++
  1.  
  2. n = strlen(cadena);
  3. for(int i = 0, i < n, i++)
  4.    num += cadena[n-i]*pot(i);
  5. //pot(i) tiene que devolver 10^i
  6.  
  7.  

De numero a cadena

Código: C++
  1.  
  2. i = 0;
  3. while(numero){
  4.   j = numero % 10;
  5.   cadena[i] = j;
  6.   numero -= j;  
  7.   numero /= 10;
  8.   i++;
  9. }
  10. cadena[i] = 'n';
  11. n = strlen(cadena);
  12. for(i = 0; i < n; i++)
  13.   cadena2[i] = cadena[n-i];
  14. cadena2[n] = cadena[n];
  15.  
  16.  


Espero sirva

Cualquiera que quiera opinar y/o criticar bienvenido sea ^^
The sweet smell of a great sorrow lies over the land.