Matlab - while y for combinados

 
Vista:
sin imagen de perfil

while y for combinados

Publicado por Steven (1 intervención) el 02/01/2017 06:52:10
Como estan.... disculpen tengo una pregunta.... quise poner un for dentro de un while en Matlab, pero al correr el programa no me lee nada, tampoco me sale algun mensaje indicandome el error... Se puede anidar un for dentro de un while? De antemano les agradezco la ayuda.. este es el codigo.
1
2
3
4
5
6
7
i=1
while i>3
for j=1:3
h(j,i)=j^2
end
i=i+1
end
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 Royeth
Val: 3.309
Plata
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

while y for combinados

Publicado por Royeth (1818 intervenciones) el 02/01/2017 15:35:12
se puede anidar pero la condición del while no se cumple y por eso no te sale error ni se ejecuta nada a excepción de asignarle a i el valor de 1 , debido a que la condición del while dice mientras i sea mayor que 3 , es decir, mientras 1 sea mayor que 3 y cómo es falso entonces no entra en el while , deberías hacer más bien mientras i sea menor que 3 , o menor o igual dependiendo de lo que deseas :

1
2
3
4
5
6
7
i=1;
while i>3
for j=1:3
h(j,i)=j^2
end
i=i+1;
end

aunque si tienes una condición de este tipo te recomiendo que trabajes con dos for anidados mejor

saludos
https://www.facebook.com/royethmatlab/
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
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

while y for combinados

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 02/01/2017 18:17:44
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
>> clear all
i=1;
for i=3:6
for j=1:3
h(j,i)=j^2;
end
i=i+1;
end
h
 
h =
 
     0     0     1     1     1     1
     0     0     4     4     4     4
     0     0     9     9     9     9




1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
>> clear all
i=1;
while i<3
for j=1:3
h(j,i)=j^2;
end
i=i+1;
end
h
 
h =
 
     1     1
     4     4
     9     9



Saludos.
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
programador en matlab
Servicios de programación matlab
[email protected]


http://matlabcaballero.blogspot.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar