Matlab - Fibonacci con break para que arroje los números antes de 100

   
Vista:

Fibonacci con break para que arroje los números antes de 100

Publicado por Ivan (2 intervenciones) el 07/03/2014 06:10:06
Hola solicito ayuda porque tengo el programa pero arroja un número más del que debería.
El problema va así:
Modifica la serie de Fibocacci en MatLab de manera que arroje los números menores a 100 independientemente de los números que tenga el vector de posición con la ayuda de un break.
Esto es lo que tengo :

clc
clear
v(1)=0;
v(2)=1;
for i=3:17 % <- a esto me refiero con lo de vector de posición a el (17)
v(i)=v(i-1)+v(i-2);
if v(i)>=100
break
end
end
disp(v)

y me arroja:
0 1 1 2 3 5 8 13 21 34 55 89 144
pero necesito que solo quede hasta el 89, ya que es un número menor a 100.

¿Cómo lo modifico para que me dé hasta el 89????
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 Jorge De Los Santos

Fibonacci con break para que arroje los números antes de 100

Publicado por Jorge De Los Santos (212 intervenciones) el 07/03/2014 15:34:19
Hola Iván.

Una solución muy sencilla sería eliminar el último valor obtenido por el vector, puesto que cuando se hace la comprobación ese valor mayor a 100 ya ha sido agregado. Lo cual puedes hacer agregando lo siguiente:

1
2
3
4
5
6
7
8
9
10
11
12
clc
clear
v(1)=0;
v(2)=1;
for i=3:17 % <- a esto me refiero con lo de vector de posición a el (17)
    v(i)=v(i-1)+v(i-2);
    if v(i)>=100
        v(i)=[];
        break;
    end
end
disp(v)


Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar

Fibonacci con break para que arroje los números antes de 100

Publicado por Ivan (2 intervenciones) el 09/03/2014 06:46:43
Muchísimas gracias :D !!!
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

Fibonacci con break para que arroje los números antes de 100

Publicado por JOSE JEREMIAS CABALLERO jjcc94@hotmail.com (3433 intervenciones) el 09/03/2014 11:55:54
1
2
3
4
5
6
7
8
9
10
11
12
clear
v(1)=0;
v(2)=1;
 
for i=3:300 % <- a esto me refiero con lo de vector de posición a el (17)
    v(i)=v(i-1)+v(i-2);
     if v(i)>=100
         v=v(1:end-1);
        break
    end
end
disp(v)


1
2
>> fibonacci2
     0     1     1     2     3     5     8    13    21    34    55    89



Saludos.
JOSE JEREMÍAS CABALLERO
Asesorías en Matlab
programador en matlab
Servicios de programación matlab
jjcc94@hotmail.com


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
1
Comentar