Sie sind auf Seite 1von 6

Marmolejo Salazar Patrocinio Abigail

Mtodos Numricos

Tarea 1
Problema 1
Los nmeros de Fibonacci quedan definidos por la ecuacin:
Partiendo de los dos primeros valores predeterminados
.
Construye en Scilab una funcin que reciba como dato de entrada un nmero entero positivo x, y cuya
salida sea un vector que contenga los nmeros de Fibonacci menores que x. Muestra el resultado que
arroja tu funcin para al menos 3 valores distintos de x.

Observaciones:
Primero se definieron las variables, en este caso i=3 y j=2 que funcionarn como contadores, la variable
n=[1,1] porque es el punto de partida, es decir son los dos primeros valores predeterminados.
La variable r es el valor de x al que le desea encontrar sus nmeros de fibonacci.
El comando while es el que usaremos debido a que se cicla hasta cumplir la condicin. Dentro del while
tenemos la funcin de fibonacci pero como este se ejecutaba una vez ms de las deseadas, se recortaron
los valores haciendo un segundo vector y omitiendo el ltimo valor, esto con el ciclo for y se genero el
vector m en forma de columna usando (m) que transpone los valores creando un vector fila (esto
ltimo solo para ahorrar espacio).

Solucin 1:
Cdigo cuando x=50
r=50;
function m=f(r)
i=3;
j=2;
n=[1,1];
while n(j)<r
n(i)=n(i-2)+n(i-1);
j=j+1;
i=i+1;
end
for k=1:i-2
m(k)=n(k);
end
endfunction
m=f(r)'

Resultado
1. 1. 2. 3. 5. 8. 13. 21. 34.

Solucin 2:
Cdigo cuando x=330
r=330;
function m=f(r)
i=3;
j=2;
n=[1,1];
while n(j)<r
n(i)=n(i-2)+n(i-1);
j=j+1;
i=i+1;
end

4FM1

Marmolejo Salazar Patrocinio Abigail

Mtodos Numricos

for k=1:i-2
m(k)=n(k);
end
endfunction
m=f(r)'

Resultado
1. 1. 2. 3. 5. 8. 13. 21. 34. 55. 89. 144. 233.

Solucin 3
Cdigo cuando x= 7310
r=7310;
function m=f(r)
i=3;
j=2;
n=[1,1];
while n(j)<r
n(i)=n(i-2)+n(i-1);
j=j+1;
i=i+1;
end
for k=1:i-2
m(k)=n(k);
end
endfunction
m=f(r)'

Resultado
1. 1. 2. 3. 5. 8. 13. 21. 34. 55. 89. 144. 233. 377. 610. 987. 1597. 2584. 4181. 6765.

Problema 2
La matriz de Hilbert es una matriz de n n cuya entrada i, j corresponde a

Usando Scilab crea una funcin que tome el argumento de entrada n e imprima en la consola la matriz
de Hilbert correspondiente.

Observaciones
Para este cdigo se utilizo un for anidado, y las variables i y j que representan a las filas y a las
columnas respectivamente, empezando de 1 hasta n, dnde n es la variable que representa el
tamao de la Matriz (Matriz_H), y los parmetros i=1:n y j=1:n son iguales porque as se asegura que la
matriz resultante sea cuadrada.

Cdigo
Cuando n=3
n=3;
function Matriz_H=f(n)
for i=1:n
for j=1:n
Matriz_H(i,j)=(1)/(i+j-1);
end
end
endfunction

4FM1

Marmolejo Salazar Patrocinio Abigail


Matriz_H=f(n)

Resultado

Cdigo
Cuando n=5
n=5;
function Matriz_H=f(n)
for i=1:n
for j=1:n
Matriz_H(i,j)=(1)/(i+j-1);
end
end
endfunction
Matriz_H=f(n)

Resultado

Cdigo
Cuando n=8
n=8;
function Matriz_H=f(n)
for i=1:n
for j=1:n
Matriz_H(i,j)=(1)/(i+j-1);
end
end
endfunction
Matriz_H=f(n)

Resultado

Mtodos Numricos

4FM1

Marmolejo Salazar Patrocinio Abigail

Mtodos Numricos

Problema 3
Considere la siguiente funcin de dos variables,

Construye en Scilab una funcin que reciba como datos de entrada a las variables x e y, y cuya salida sea
el valor de f. Como valor de a, utiliza el nmero de vocales que contiene tu nombre completo (con
apellido); para b, el nmero de consonantes.
Prueba tu funcin para al menos 5 pares ordenados (x, y) y resume tus resultados en una tabla.

Patrocinio Abigail Marmolejo Salazar a=16 b=17


Observaciones
Para este cdigo solo necesitamos el comando if debido a que el rango de la funcin nos da el
condicional. Y como se tienen dos rangos usamos un if anidado. Adems se le agreg la palabra caso
para saber en cul de estos se encuentran los valore de x e y.

Cdigo
x=800;
y=12;
function [z, caso]=f(x, y)
a=16;
b=17;
if x>=a
if y>=b
z=x-a+y-b;
caso=1
end
end
if x>=a
if y<=b
z=x-a+b-y;
caso=2
end
end
if x<=a
if y>=b
z=a-x+y-b;
caso=3
end
end
if x<=a
if y<=b
z=a-x+b-y;
caso=4
end
end
endfunction
[z,caso]=f(x,y)

Resultado

4FM1

Marmolejo Salazar Patrocinio Abigail

Mtodos Numricos

x>a , y>b
x-a + y-b

16
16
16
16
16

17
17
17
17
17

800
7
40
0
16

12
3
1000
8740
17

1007

x>a , y<b
x-a + b-y
789

x<a , y>b
a-x + y-b

x<a , y<b
a-x + b-y
23

8739
0

Problema 4
Grafica 1
Cdigo
function y=f(x)
y=((2*x**3)-(6*x)-1)
endfunction
x=-10:0.01:10;
y=f(x);
plot(x,y)

Observaciones
Para hacer las grficas se escribe la function y=f(x) en el SciNotes, se le da un enter y
automticamente aparece endfunction entonces entre ambos renglones se escribe la
funcin. Posteriormente hasta el final se escribe el rango en los extremos y el tamao de paso
en el centro que se desean para graficar, en este caso fue x=-10:0-01:10, despus se indica la
funcin y el comando plot (x,y) que es el que se utiliza para realizar las graficas.
Resultado

Grafica 2
Cdigo
clc
clear
function y=f(x)
y=%e**(x-2)+x**3-x;
endfunction
x=-4:0.05:4;

4FM1

Marmolejo Salazar Patrocinio Abigail


y=f(x);
plot(x,y)

Resultado

Grfica 3
Cdigo
clc
clear
function y=f(x)
y=1+5*x-6*x**3-(%e**(2*x))
endfunction
x=-20:0.3:20;
y=f(x);
plot(x,y)

Resultado

Mtodos Numricos

4FM1

Das könnte Ihnen auch gefallen