Matlab - Repetir sentencias programadas anteriores dentro de un script

 
Vista:

Repetir sentencias programadas anteriores dentro de un script

Publicado por Lara (1 intervención) el 25/07/2014 12:36:12
Hola! Mi problema es que no se como hacer para que mi programa en matlab, cuando llega al final, vuelva a ejecutar todas las sentencias a partir de una línea anterior.
Pongo un ejemplo para que se entienda mejor...

(suponemos que esta primera linea es la linea 15 de mi programa)
a=input('escribe el periodo que se quiere representar (12, 25 ó 37 segundos) ')

if a==12
b=matriz12(5, : );
c=[1 2 5 10 15 20;]
plot(b,c)
hold on

elseif a==25
b=matriz25(5, : );
c=[1 2 5 10 15 20;]
plot(b,c)
hold on

elseif a==37
b=matriz37(5, : );
c=[1 2 5 10 15 20;]
plot(b,c)
hold on

end

aa=input('¿representar otro periodo junto al anterior? (si=1/no=2) ')

if aa=1

(aqui es donde no se como hacer para que vuelva a ejecutar todo desde la supuesta linea 15 de mi programa)

Mil 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
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Repetir sentencias programadas anteriores dentro de un script

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 25/07/2014 14:36:07
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
clear all
 close all
 matriz12=round(20*rand(6,6));
 matriz25=round(20*rand(6,6));
 matriz37=round(20*rand(6,6));
 condicion=1;
 while condicion==1
     a=input('escribe el periodo que se quiere representar (12, 25 ó 37 segundos) ');
     if a==12
         b=matriz12(5,:);
         c=[1 2 5 10 15 20];
         plot(b,c)
         hold on
     elseif a==25
         b=matriz25(5,:);
         c=[1 2 5 10 15 20];
         figure(gcf)
         plot(b,c,'r')
         hold on
     elseif a==37
         b=matriz37(5,:);
         c=[1 2 5 10 15 20];
         figure(gcf)
         plot(b,c,'m')
         hold on
     end
     condicion=input('¿representar otro periodo junto al anterior? (si=1/no=2) ');
 end


1
2
3
4
5
6
7
>> while1_infinito
escribe el periodo que se quiere representar (12, 25 ó 37 segundos) 12
¿representar otro periodo junto al anterior? (si=1/no=2) 1
escribe el periodo que se quiere representar (12, 25 ó 37 segundos) 25
¿representar otro periodo junto al anterior? (si=1/no=2) 1
escribe el periodo que se quiere representar (12, 25 ó 37 segundos) 37
¿representar otro periodo junto al anterior? (si=1/no=2) 2


Saludos.
JOSE JEREMÍAS CABALLERO
Asesoría online y Presencial en Matlab
programador en matlab
Servicios de programación matlab
[email protected]
Estimado Usuario de Matlab, el correo es para servicios de programación, toda ayuda gratuita es vía foro.


http://matlabcaballero.blogspot.com

http://www.lawebdelprogramador.com/foros/Matlab/1371532-FORMA_DE_APRENDER_MATLAB.html
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

Repetir sentencias programadas anteriores dentro de un script

Publicado por Lara (2 intervenciones) el 28/07/2014 10:43:46
Muchas gracias! Me ha funcionado perfectamente
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

Repetir sentencias programadas anteriores dentro de un script

Publicado por Lara (2 intervenciones) el 04/09/2014 13:07:01
Hola! Me ha surgido otra duda con este mismo programa...

Si ahora quisiese añadir una leyenda a las gráficas, como haría para que al final me saliese en la leyenda solo los periodos que se han escrito en el input?

Por ejemplo, si yo quiero representar solo el periodo de 12 segundos y el de 37, como hago para que en la leyenda solo me aparezca ' T = 12 segundos ' y ' T = 37 segundos ' ?
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
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Repetir sentencias programadas anteriores dentro de un script

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 04/09/2014 14:44:21
Si se puede hacer, pero ya se usa variables tipo celdas.


1
2
3
4
5
>> while1_infinito
escribe el periodo que se quiere representar (12, 25 ó 37 segundos) 12
¿representar otro periodo junto al anterior? (si=1/no=2) 1
escribe el periodo que se quiere representar (12, 25 ó 37 segundos) 37
¿representar otro periodo junto al anterior? (si=1/no=2) 2






Saludos.
JOSE JEREMÍAS CABALLERO
Asesoría online y Presencial en Matlab
programador en matlab
Servicios de programación matlab
[email protected]
Estimado Usuario de Matlab, el correo es para servicios de programación, toda ayuda gratuita es vía foro.


http://matlabcaballero.blogspot.com

http://www.lawebdelprogramador.com/foros/Matlab/1371532-FORMA_DE_APRENDER_MATLAB.html
legenda
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