C/Visual C - Sumar una variable

 
Vista:

Sumar una variable

Publicado por Dario Esteban (1 intervención) el 27/09/2002 02:45:30
Hola, Escribo estas lineas para pedir ayuda alo programadores que visitan esta pagina, mi problema es el siguiente:

Tengo mi variable como cadena en la cual meto una suma (por ejemplo "1+2") pero despues de esto necesito que me haga (evalue) esa suma, como le hago para que me entienda el programa que lo que tiene es una adición pero no como proceso y la convierta a un proceso

ejemplo:

printf("indica la suma");
scanf("%s",&operacion); // aqui el usuario pondra "1+2-3+6-5....n-iteracciones"
//ahora aqui ¿como convierto esa variable en un proceso
//ya evaluando "operacion" se deve ver el resultado 1:
printf("El resultado de la suma es: %f",operacion); //aqui debe mostrar el numero 1

segun devo intentar no meter esto en un arreglo(vector) pero en caso dado tambien si me pueden orientar en como deberia meter esto en un arreglo logrando el mismo resultado
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Sumar una variable

Publicado por Néstor (11 intervenciones) el 27/09/2002 09:05:07
Si tenés solo sumas y restas tenés que recorrer la cadena caracter a caracter hasta que encuentres un + o un -, y convertir ese número a entero (con atoi o con atol) y guardarlo en una variable numérica, "recordar" la operación e iterar hasta que reccorras toda la cadena encontrando un número (cualquier cosa hasta un operador), haciendo la transformación y aplicando el operador que encontraste.

Fijate que este método no anda si tenés multiplicaciones y divisiones porque no tiene en cuenta la precedencia de operadores, tampoco tiene en cuenta paréntesis ni nada, y además necesita que la fórmula introducida no tenga errores.

Cualquier duda consultame.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Sumar una variable

Publicado por Angel (1 intervención) el 30/09/2002 13:28:27
Creo q lo q podias hacer es una especie de Menu en la q cada vez q el usuario acabe de introducir un numero le pidiera si lo siguiente va a ser una resta, una multiplicacion, una division, etc...
Espero q te haya serido de ayuda, y si puedo resolverte algo mas, solo tienes q preguntar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar