Matlab - bucle

 
Vista:

bucle

Publicado por Javier (27 intervenciones) el 02/03/2008 14:34:02
Hola!!estoy intentando hacer una cosilla en MATLAB pero por mas que lo intento no encuentro como. Haber si alguien me puede hechar una mano.
Yo pido una serie de valores por pantalla con la funcion imput. Con estos valores se realiza una operacion. Si esta operacion esta por encima de un valor, es valida y el programa sigue su curso normalmente. Ahora, si esta operacion esta por debajo de este valor lo que quiero esque el programa nos muestre un mensaje que diga que no es valido y retroceda y nos vuelva a perguntar los datos de la funcion imput.
Yo se como hacer todo salvo que el programa retroceda. No se si habra algun bucle o alguna funcion como break en C++ que se pueda utilizar.
Gracias
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:bucle

Publicado por Kike (304 intervenciones) el 03/03/2008 04:05:52
% Invento una condición para el bucle, y que sea válida
condicion=1;

% entro al bucle
while condicion==1
valores=input('Digite los valores de entrada: ');
...
Procesamiento de datos
...
% con el procesamiento de datos obtengo la variable valor
% si esta variable es mayor que un umbral, sigue su curso el programa;
% y en caso contrario retrocede y pide los valores de entrada otra vez
if valor >= umbral
condicion=0; % para salir del bucle
else
disp('Operación no válida.');
end % fin de if
end % fin de while
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:bucle

Publicado por Javier (27 intervenciones) el 03/03/2008 09:43:07
Muchísimas gracias de verdad. Funciona perfectamente. Otra duda. Como puedo hacer lo mismo pero en el if quiero que dependa de si el resultado de valor es un numero entero o no, es decir, que si valor es entero siga con el programa y sino lo es que vuelva a preguntar los valores. Lo unico que e encontrado es una funcion que se llama isinteger() que supuestamente te dice si el numero es entero o no, pero no funciona con eso y siempre te dice que no es entero.
Gracias
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:bucle

Publicado por Kike (304 intervenciones) el 03/03/2008 14:57:11
% Invento una condición para el bucle, y que sea válida
condicion=1;

% entro al bucle
while condicion==1
valores=input('Digite los valores de entrada: ');
...
Procesamiento de datos
...
% con el procesamiento de datos obtengo la variable valor
% si esta variable es entera, sigue su curso el programa;
% y en caso contrario retrocede y pide los valores de entrada otra vez
if mod(valor, 1)==0 % si no es cero el residuo entonces no es entero
condicion=0; % para salir del bucle
else
disp('Operación no válida.');
end % fin de if
end % fin de while
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:bucle

Publicado por Javier (27 intervenciones) el 03/03/2008 15:08:28
Muchísimas gracias. Funciona perfectamente. Me viino de lujo tu ayuda.
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