Problema con las strings de una calculadora
Publicado por CiberRonin (1 intervención) el 30/08/2004 12:55:42
Buenas!!
Estoy creando una calculadora con Visual Basic .NET y me ha surgido un pequeño-gran problema... Como hace poco que estoy en el proyecto, y hace menos todavía que estoy con VB.NET de momento solo tengo la parte de suma y resta. El programa realiza cualquier operación combinada con sumas y restas, excepto si el primer número de la operación és un número negativo, caso en el que da error. Explico el funcionamiento del proceso:
Primero el programa separa mediante términos diferentes aquellas expresiones que estan separadas por el operante suma (+), con lo qual las restas quedan en un bloque. Por ejemplo:
34+56+78-45+67 quedaría después del primer paso en un array de diferentes bloques, que serían:
34 // 56 // 78-45 // 67
Luego el programa separa los términos que están separados por el operador resta (-), con lo qual el anterior bloque (78-45) pasaría a separarse en dos bloques, 78 i 45, que se restarian y sustiruirían el valor (78-45) del anterior array por el valor 33.
Hasta aquí todo funciona bien. Pero al introducir el primer valor negativo, el proceso de separar términos separados por el operador resta (-) separa lo que hay antes del simbolo resta (o sea nada) y separa el número N que viene después, con lo que el negativo deja de existir y el programa da un error.
Bien esto es todo si alguien sabe como puedo solucionar esto por favor que responga el mensaje se lo agradeceré eternamente!!
Estoy creando una calculadora con Visual Basic .NET y me ha surgido un pequeño-gran problema... Como hace poco que estoy en el proyecto, y hace menos todavía que estoy con VB.NET de momento solo tengo la parte de suma y resta. El programa realiza cualquier operación combinada con sumas y restas, excepto si el primer número de la operación és un número negativo, caso en el que da error. Explico el funcionamiento del proceso:
Primero el programa separa mediante términos diferentes aquellas expresiones que estan separadas por el operante suma (+), con lo qual las restas quedan en un bloque. Por ejemplo:
34+56+78-45+67 quedaría después del primer paso en un array de diferentes bloques, que serían:
34 // 56 // 78-45 // 67
Luego el programa separa los términos que están separados por el operador resta (-), con lo qual el anterior bloque (78-45) pasaría a separarse en dos bloques, 78 i 45, que se restarian y sustiruirían el valor (78-45) del anterior array por el valor 33.
Hasta aquí todo funciona bien. Pero al introducir el primer valor negativo, el proceso de separar términos separados por el operador resta (-) separa lo que hay antes del simbolo resta (o sea nada) y separa el número N que viene después, con lo que el negativo deja de existir y el programa da un error.
Bien esto es todo si alguien sabe como puedo solucionar esto por favor que responga el mensaje se lo agradeceré eternamente!!
Valora esta pregunta


0