sumar numeros de 2 digitos declarados char

      • 331
      • mensajes
      • miembro desde
      • 22/08/06
    28/04/2007
    #1 sumar numeros de 2 digitos declarados char

    el tema es que me pidieron en clase un programa que me calcule una operacion la cual ingreso en una sola linea de codigo. para esto debo declarar un vector char deonde ingresar la operacion, cree un algoritmo donde evaluo primero los parentesis, luego las multiplicaciones y divisiones y por ultimo las sumas y restas.
    mi problema es que cuando voy a evaluar una cuenta, si tengo por ejemplo 2*3 aplico una funcion mult que opera el nro antes del * y luego del *, pero si la cuenta a evaluar es 25*987 de la manera que yo lo tengo me haria 5*9 ya que el vector es char. como podria hacer para arreglar este tema?
    si alguien tiene idea me chifla

  1. ¿Este tema te pareció interesante? Compártelo!

    ¿No es lo que buscabas? Intenta buscar un tema similar

    2 comentarios / 15367 Visitas

    • PoetaCamba
      Invitado
    28/04/2007
    #2 Re: sumar numeros de 2 digitos declarados char

    Hola.
    Realicé un pequeño test sobre tú problema, en Visual C++ v.6.0.
    Funciona bien, tanto para 2, 3 o más cifras/dígitos.
    Espero que te sirva. Saludos.

    Archivos adjuntados Archivos adjuntados
      • 780
      • mensajes
      • miembro desde
      • 27/05/05
    30/04/2007
    #3 Re: sumar numeros de 2 digitos declarados char

    Creo q vas a tener q ir comprobando caracter por caracter hasta q los digitos sean distintos de 1,2,3,..,9,0 hay una funciones q te ayudan a eso. Mira esto:

    Prueba y conversión de caracteres
    Una biblioteca relacionada #include la cual contiene muchas funciones útiles para convertir y probar caracteres individuales.

    Las funciones más comunes para revisar caracteres tienen los siguientes prototipos:
    int isalnum(int c) -- Verdad si c es alfanumérico.
    int isalpha(int c) -- Verdad si c es una letra.
    int isascii(int c) -- Verdad si c es ASCII.
    int iscntrl(int c) -- Verdad si c es un caracter de control.
    int isdigit(int c) -- Verdad si c es un dígito decimal.
    int isgraph(int c) -- Verdad si c es un caracter imprimible, exceptuando el espacio en blanco.
    int islower(int c) -- Verdad si c es una letra minúscula.
    int isprint(int c) -- Verdad si c es un caracter imprimible, incluyendo el espacio en blanco.
    int ispunct(int c) -- Verdad si c es un signo de puntuación.
    int isspace(int c) -- Verdad si c es un espacio
    int isupper(int c) -- Verdad si c es una letra mayúscula.
    int isxdigit(int c) -- Verdad si c es un dígito hexadecimal.
    Las funciones para conversión de caracteres son:

    int toascii(int c) -- Convierte c a ASCII o un unsigned char de 7 bits, borrando los bits altos.
    int tolower(int c) -- Convierte la letra c a minúsculas, si es posible.
    int toupper(int c) -- Convierte la letra c a mayúsculas, si es posible.
    El uso de estas funciones es directo y por lo tanto, no se dan ejemplos.

    Espero t sirva.