Título: problema con do-while Publicado por: m@o_614 en 31 Octubre 2013, 21:01 pm Saludos
tengo que crear un programa que pida al usuario pares de números enteros y escriba su suma (con el formato "20 + 3 = 23")en pantalla y en un fichero llamado "sumas.txt", que se encontrará en un subdirectorio llamado "resultados". Cada vez que se ejecute el programa deberá añadir los nuevos resultados a continuación de los resultados anteriores y el codigo es el siguiente y compila correctamente: Código el problema es que si a la hora de hacerme la pregunta Desea hacer otra suma, yo quiero validar que la respuesta sea solamente o S o N, y si la respuesta es otro caracter que haga un while preguntandome si quiero otra suma hasta que el caracter sea valido, para esto le hice la siguiente modificacion al codigo pero el dowhile interior nunca se sale y no entiendo por que Código
de antemano gracias Título: Re: problema con do-while Publicado por: ivancea96 en 31 Octubre 2013, 23:33 pm La condición del Do-While está mal planteada, es todo.
Seguirá con el bucle mientras "(respuesta != 'S')||(respuesta != 'N')" sea falso. Piensa algo: pides que sea diferente de S o de N. S es diferente de N, por tanto, seguirá en el bucle. N es diferente de S, por tanto, seguirá en el bucle. La corrección sería: "(respuesta != 'S')&&(respuesta != 'N')". El "AND" inplica que tiene que ser diferente de N y diferente de S a la vez. 'S' : la primera condición se cumpliría, pero la segunda no. Por tanto, saldría del bucle. Supongo que es mucha explicación para un simple despiste jaja. Cuando sea así, tú mismo comprueba la condición. Ponte ejemplos si es necesario. "¿Qué pasaría si "respuesta" fuera igual a 'N'? |