Matlab - MODIFICAR MÉTODO MATLAB ECUACIONES EN DIFERENCIAS

   
Vista:

MODIFICAR MÉTODO MATLAB ECUACIONES EN DIFERENCIAS

Publicado por HBG (1 intervención) el 02/06/2016 20:29:22
Hola, les escribo porque no consigo resolver este ejercicio.

Nos dan este código:

function y=ediff(n)
y(1)=3;
y(2)=2;
for i=3:n
y(i)=y(i-1)/y(i-2)+floor((i-2)/2);
end


El problema es que para todo n<3, la consola nos devuelve como salida el vector [3 2]. Me pide que explique el porqué y que lo arregle. Obviamente al tener asignados los valores y(1)=3, y(2)=2; si introducimos n<3 no entra en el for y devuelve los valores previamente asignados, pero no sé como puedo arreglarlo, ya que he probado con una serie de if encadenados pero entonces el bucle for no funciona.
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

MODIFICAR MÉTODO MATLAB ECUACIONES EN DIFERENCIAS

Publicado por JOSE JEREMIAS CABALLERO jjcc94@hotmail.com (3440 intervenciones) el 03/06/2016 01:05:38
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
29
30
31
32
33
34
35
36
='editor_code'>>> n=1, i=3:n
 
n =
 
     1
 
 
i =
 
   Empty matrix: 1-by-0
 
>> %no entra al bucle for, si es que n=1
>> n=2, i=3:n
 
n =
 
     2
 
 
i =
 
   Empty matrix: 1-by-0
 
>> %no entra al bucle for, si es que n=2
>> n=3, i=3:n
 
n =
 
     3
 
 
i =
 
     3
 
>> %si entra al bucle for, si es que n=3

Saludos.
JOSE JEREMÍAS CABALLERO
Asesoría online en Matlab
Programador en Matlab
Servicios de programación matlab
jjcc94@hotmail.com
El correo es para servicios de programación, toda ayuda gratuita es vía foro.


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