problemas con if, switch y waitforbuttonpress
Publicado por Isaac (2 intervenciones) el 23/04/2013 22:05:31
Hola, estoy realizando un programa en matlab y tengo unos cuantos problemas.
Lo que quiero es abrir un numero de manera aleatoria, pero que al mismo tiempo matlab evalúe si hay una entrada del teclado. Entonces, si se presionara una tecla matlab reiniciaría el ciclo 'for', si en la siguiente vez que se inicie el ciclo no se presiona una tecla se tendría que abrir el número y así sucesivamente. Para esto estoy utilizando el comando 'if', pero tengo problemas para que corra el programa. Había utilizado el comando 'switch', pero me dió la misma cantidad de problemas.
Si alguien pudiera ayudarme :!
El código es el siguiente:
n=6; %numero de repeticiones del loop
for i = 1:n;
% Aquí es donde quiero tener las dos opciones, una que
% me permita reiniciar el loop si se presiona una tecla y
% otra, que cuando no se presione ninguna tecla me
% muestre un número aleatorio.
if senal = waitforbuttonpress || getkey
continue % Con esto se reinicia mi ciclo
else
i=randperm(3,1); % Esto me muestra mi número aleatorio
disp(i)
pause(1)
end
end
Lo que quiero es abrir un numero de manera aleatoria, pero que al mismo tiempo matlab evalúe si hay una entrada del teclado. Entonces, si se presionara una tecla matlab reiniciaría el ciclo 'for', si en la siguiente vez que se inicie el ciclo no se presiona una tecla se tendría que abrir el número y así sucesivamente. Para esto estoy utilizando el comando 'if', pero tengo problemas para que corra el programa. Había utilizado el comando 'switch', pero me dió la misma cantidad de problemas.
Si alguien pudiera ayudarme :!
El código es el siguiente:
n=6; %numero de repeticiones del loop
for i = 1:n;
% Aquí es donde quiero tener las dos opciones, una que
% me permita reiniciar el loop si se presiona una tecla y
% otra, que cuando no se presione ninguna tecla me
% muestre un número aleatorio.
if senal = waitforbuttonpress || getkey
continue % Con esto se reinicia mi ciclo
else
i=randperm(3,1); % Esto me muestra mi número aleatorio
disp(i)
pause(1)
end
end
Valora esta pregunta
0