Programación Específica > Matlab
uso de variables en bucles for
(1/1)
fonsidani:
Hola,
Tengo una duda sobre el manejo de las variables en un bucle for.
¿Puedo hacer que en cada vuelta que de el bucle for, la variable en la que quiero guardar algo tenga un nombre distinto?
Es decir, algo que sea por el estilo:
for i = 1:6
data(i) = i + 4;
end
obteniendo en este caso 6 variables distintas y cada una guardando un valor. Mi intención es, en este caso, tener: data1 = 5; data2 = 6; .... y asi sucesivamente.
Muchas gracias de antemano.
Saludos
EliotHijano:
Por supuesto, tienes que utilizar un array:
--- Código: Matlab M --- data=zeros(6,1);for i = 1:6 data(i) = i + 4;end Pero nunca se puden crear variables cullos nombres dependadn del valor 'i', es decir, en vez de las variables data1, data2, data3,... tendrías un array con valores data(1) data(2),...
Por cierto, no es bueno utilizar i ó j en bucles, dado que son letras que matlab utiliza para numeros complejos, lo cual reduce la velocidad del bucle, utiliza 'in' en vez de 'i'
fonsidani:
De acuerdo. Muchas gracias!!
jp clon:
De un manual saque esto:
El siguiente ejemplo va creando variables llamadas A1, A2, ..., A10 utilizando la
posibilidad de concatenar cadenas antes de pasárselas como argumento a la función eval:
for n = 1:10
eval(['A',num2str(n),'=0']);
end
saludos
Navegación
Ir a la versión completa