Tengo una duda a la hora de validar un unsigned int. Necesitamos que nuestro programa pida un numero por teclado que necesariamente ha de ser unsigned para que continue la ejecución del programa. Necesitamos que el programa sólo continúe tras haber confirmado que el dato introducido por el usuario sea de tipo entero positivo, y de no ser así que vuelva a pedir el dato de nuevo hasta que se introduzca correctamente. GRACIAS nelek
if (opcion < 0) //Si es negativo
{
//OPCION 1: mensaje de error y repeticion de la peticion
printf ("El numero introducido no es valido. Dame otro numero: \n");
goto REPITE;
//OPCION 2: cambiarle el signo al numero y continuar
opcion = -1 * opcion;
goto SIGUE;
}
SIGUE:
else if (opcion >= 0) //Si es 0 o mayor que 0
{
//Aqui ya sigues con lo que quieras una vez ha sido valida la evaluacion
}
Gracias por el consejo, nunca te acostaras sin saber algo mas. Aunque... a que te refieres exactamente?
P.D. Por cierto, Fernando, si puedes, echale un vistazo a un par de mensajes míos que hay por ahi abajo. En uno el asunto es sobre el error CX0033 y puse tu nombre y el otro es sobre la comunicacion de un pc y un automata. Gracias
mmm lo de codigo spaguetti jamas lo habia leido/escuchado, y de hecho lo primero que pense al ver el codigo fue: ¿por que no un do-while?... pero no esta de mas aprender algo nuevo.