Está en la página 1de 11

1. El producto de dos números reales positivos es 5.

Mientras que al
sumar el cubo del primero más el cuadrado del segundo se obtiene 40.
Encuentre estos dos números. (bisección en Matlab).
𝑥𝑦 = 5

𝑥 3 + 𝑦 2 = 40

Función general: 𝑥 5 − 40𝑥 2 + 25 = 0

29/06/19 11:56 AM MATLAB Command Window 1 of 1


>> clear all
format short;
a=input('Introduzca el valor de a: ');
b=input('Introduzca el valor de b: ');
cont=input('Introduzca el número de iteraciones cont: ' );
fun=input('Introduzcal a funcion f(x)=' ,'s');
f=inline(fun);
for k=1:cont
c=(a+b)/2;
e=abs((b-a)/2);
A(k,:)=[k a b c f(c) e];
if f(a)*f(c)<0
b=c;
else
a=c;
end
end
fprintf('\n \tk \ta \tb \tc \tf(c) \terror \n' )
disp(A)
fprintf('Solución:\n c=%8.5f\n',c)
fprintf('f(c)=%8.5f\n',f(c))
fprintf('error=%8.5f\n',e)
Introduzca el valor de a: 0
Introduzca el valor de b: 1
Introduzca el número de iteraciones cont: 10
Introduzcal a funcion f(x)=X^5 -40*X^2 +25
k a b c f(c) error
1.0000 0 1.0000 0.5000 15.0313 0.5000
2.0000 0.5000 1.0000 0.7500 2.7373 0.2500
3.0000 0.7500 1.0000 0.8750 -5.1121 0.1250
4.0000 0.7500 0.8750 0.8125 -1.0522 0.0625
5.0000 0.7500 0.8125 0.7813 0.8770 0.0313
6.0000 0.7813 0.8125 0.7969 -0.0791 0.0156
7.0000 0.7813 0.7969 0.7891 0.4011 0.0078
8.0000 0.7891 0.7969 0.7930 0.1616 0.0039
9.0000 0.7930 0.7969 0.7949 0.0414 0.0020
10.0000 0.7949 0.7969 0.7959 -0.0188 0.0010
Solución:
c= 0.79590
f(c)=-0.01881
error= 0.00098

X=0.79590
5 5
𝑦= = = 6.282
𝑥 0.79590
SOLUCION: X= 0.79590; Y=6.282
2. El producto de las edades en años de dos personas es 677.35 y si se
suman los cubos de ambas edades se obtiene 36594.38 Encuentre
cuales son estas edades. (bisección en Matlab).

𝒙𝒚 = 𝟔𝟕𝟕. 𝟑𝟓
𝒙𝟑 + 𝒚𝟑 = 𝟑𝟔𝟓𝟗𝟒. 𝟑𝟖

Ecuación general: 𝒙𝟔 − 𝟑𝟔𝟓𝟗𝟒. 𝟑𝟖𝒙𝟑 + 𝟑𝟏𝟎𝟕𝟕𝟎𝟐𝟐𝟕. 𝟑 = 𝟎

clear all
format short;
a=input('Introduzca el valor de a: ');
b=input('Introduzca el valor de b: ');
cont=input('Introduzca el número de iteraciones cont: ' );
fun=input('Introduzcal a funcion f(x)=' ,'s');
f=inline(fun);
for k=1:cont
c=(a+b)/2;
e=abs((b-a)/2);
A(k,:)=[k a b c f(c) e];
if f(a)*f(c)<0
b=c;
MATLAB Command Window Page 6
else
a=c;
end
end
fprintf('\n \tk \ta \tb \tc \tf(c) \terror \n' )
disp(A)
fprintf('Solución:\n c=%8.5f\n',c)
fprintf('f(c)=%8.5f\n',f(c))
fprintf('error=%8.5f\n',e)
Introduzca el valor de a: 22
Introduzca el valor de b: 26
Introduzca el número de iteraciones cont: 10
Introduzcal a funcion f(x)=1*X^6-36594.38*X^3+310770227.3
k a b c f(c) error
1.0e+07 *
0.0000 0.0000 0.0000 0.0000 -0.4008 0.0000
0.0000 0.0000 0.0000 0.0000 1.3562 0.0000
0.0000 0.0000 0.0000 0.0000 0.4278 0.0000
0.0000 0.0000 0.0000 0.0000 -0.0000 0.0000
0.0000 0.0000 0.0000 0.0000 0.2107 0.0000
0.0000 0.0000 0.0000 0.0000 0.1045 0.0000
0.0000 0.0000 0.0000 0.0000 0.0520 0.0000
0.0000 0.0000 0.0000 0.0000 0.0260 0.0000
0.0000 0.0000 0.0000 0.0000 0.0130 0.0000
0.0000 0.0000 0.0000 0.0000 0.0065 0.0000
Solución:
c=23.74609
f(c)=64802.43180
error= 0.00391

677.35
𝑦= = 28.5247
23.74609

SOLUCION: (X= 23.74609; Y=28.5247) años


3. Una empresa produce semanalmente una cantidad de artículos. El
costo de producción semanal tiene un costo fijo de 250 y un coso de
2.50 por cada artículo producido. El ingreso semanal por venta tiene un
valor de 3.50 por cada artículo vendido, más un costo de oportunidad
que se ha estimado directamente proporcional a la cantidad de artículos
producidos, multiplicado por el logaritmo natural. Encuentre el punto
de equilibrio para este modelo económico. (Newton en Matlab).

𝑣(𝑝𝑟𝑜𝑑𝑢𝑐𝑐𝑖𝑜𝑛) = 250 + 2.50𝑥


𝑣(𝑣𝑒𝑛𝑡𝑎) = 3.50𝑥 + 𝑥𝑙𝑛(𝑥)
250 + 2.50𝑥 = 3.50𝑥 + 𝑥𝑙𝑛(𝑥)
0 = 𝑥 + 𝑥𝑙𝑛(𝑥) − 250

>> clear
disp('Método de Newton Raphson')
%Damos de alta la variable simbólica X
syms x
%Introducimos la función,el punto de inicio,así como
%porcentaje de error
f=input('Introduzca la función f(x):');
pi=input('Introduzca el punto de inicio:' );
err=input('Porcentaje de error:');
%Graficamos la función
ezplot(f)
grid on
%Calculamos la derivada de la función
d=diff(f);
d=inline(d);
f=inline(f);
ea=100;
j=0;
while ea>err
%Aproximamos la raiz con la fórmula correpondiente
xi=pi-(f(pi)/d(pi));
%Calculamos el porcentaje de error
ea=abs(((xi-pi)/xi)*100);
pi=xi;
j=j+1;
end
%Mostramos los resultados en pantalla (con 3 decimales)
fprintf('\nRaiz= %10.3f en %d Iteraciones' ,pi,j)
Método de Newton Raphson
Introduzca la función f(x):x+(x*log(x))-250
Introduzca el punto de inicio:10
Porcentaje de error:0.001%
Raiz= 50.743 en 4 Iteraciones

Nota: Para empezar a tener ganancias se debe vender más de 50.743 artículos por lo contrario
tenemos perdidas
4. En una empresa de fertilizantes en cada mes, el ingreso por ventas en
miles de dólares se describe con el modelo v(x) = 0.4x (30 - x) mientras
que el costo de producción en miles de dólares es c(x) = 5+ 10 ln(x),
siendo x la cantidad producida en toneladas, 1<x<30. ¿Qué cantidad
mensual debe producir para obtener el máximo beneficio económico?
(Newton en Matlab)
𝑉(𝑥) = 0.4𝑥(30 − 𝑥)
𝐶(𝑥) = 5 + 10ln⁡(𝑥)
0.4𝑥(30 − 𝑥) = 5 + 10ln⁡(𝑥)

0 = 12𝑥 − 0.4𝑥 2 − 5 − 10ln⁡(𝑥)

0 = 0.4𝑥 2 + 10 ln(𝑥) − 12𝑥 + 5

clear
disp('Método de Newton Raphson')
%Damos de alta la variable simbólica X
syms x
%Introducimos la función,el punto de inicio,así como
%porcentaje de error
f=input('Introduzca la función f(x):');
pi=input('Introduzca el punto de inicio:' );
err=input('Porcentaje de error:');
%Graficamos la función
ezplot(f)
grid on
%Calculamos la derivada de la función
d=diff(f);
d=inline(d);
f=inline(f);
ea=100;
j=0;
while ea>err
%Aproximamos la raiz con la fórmula correpondiente
xi=pi-(f(pi)/d(pi));
%Calculamos el porcentaje de error
ea=abs(((xi-pi)/xi)*100);
pi=xi;
j=j+1;
end
%Mostramos los resultados en pantalla (con 3 decimales)
fprintf('\nRaiz= %10.3f en %d Iteraciones' ,pi,j)
Método de Newton Raphson
Introduzca la función f(x):(0.4*x^2)+(10*log(x))-(12*x)+5
Introduzca el punto de inicio:20
Porcentaje de error:0.1%
Raiz= 26.430 en 4 Iteraciones>>

SOLUCION: 26.430 MENSUALES TIENE QUE PRODUCIR AL MES PARA


TENER LA GANACIA MAXIMA
6. Un modelo de crecimiento poblacional está dado por.𝒇(𝒙) = 𝒌𝒙 + 𝟐𝒆𝟎.𝟏𝒙
, siendo k una constante que debe determinarse y x tiempo en años. Se conoce
que f(10)=50.
a) Determine la población en el año 25. (fzero de Matlat)
b) Determine el año en el que la población alcanzará el valor 1000.
50 = 10𝑘 + 2𝑒 0.1∗10
50 − 2𝑒
=𝑘
10
𝑘 = 4.4563
𝑓(𝑥) = 4.4563𝑥 + 2𝑒 0.1𝑥
CODIGO EN MATLAB
a)
>> clear
>> betty = @(x) (4.4563*x)+2*exp(0.1*x);
>> betty(25)
ans =
RESPUESTA = A LOS 25 AÑOS SE TIENE 135.7725=136 HABITANTES

b)

𝑓(𝑥) = 4.4563𝑥 + 2𝑒 0.1𝑥 = 1000


𝑓(𝑥) = 4.4563𝑥 + 2𝑒 0.1𝑥 − 1000 = 0
CODIGO EN MATLAB
clear

>> f= @(x) (4.4563*x)+2*exp(0.1*x)-100

f=

@(x)(4.4563*x)+2*exp(0.1*x)-100

>> fzero(f,0)

ans =

19.3367 RESPUESTA: EN EL AÑO 19.3367 SE TIENE 1000 HABITANTES.


7. Un modelo de crecimiento poblacional está dado por 𝒇(𝒕) = 𝒌𝟏 𝒕 + 𝒌𝟐 ⁡𝒆𝟎.𝟏𝒕
Siendo k1 y k2 constantes, y t tiempo en años.
Se conoce que f(10)=25, f(20)=650.
a) Determine la población en el año 25
b) Determine el año en el que la población alcanzará el valor 5000. (fzero de
Matlat)
ecuación 1⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡25 = 10𝑘1 + 𝑘2 𝑒

ecuación 2 ⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡⁡650 = 20𝑘1 + 𝑘2 𝑒 2

>> clear

>> A=[10 exp(1);20 exp(2)]

A=

10.0000 2.7183

20.0000 7.3891

>> B=[25;650]

B=

25

650

>> s = inv(A)*B

s=

-81.0327

307.2995

K1=-81.0327 K2=307.2995

FUNCION 𝐹(𝑡) = −81.0327𝑡 + 307.2995𝑒 0.1𝑡


POBLACION A LOS 25 AÑOS

betty = @(t) -81.0327*t+307.2995*exp(0.1*t) ;

>> betty(25)

ans =

1.7179e+03

RESPUESTA: A LOS 25 AÑOS SE TIENES 1717.9=1718 PERSONAS

b) Año en el que la población alcanzará el valor 5000.

>> f= @(t) -81.0327*t+307.2995*exp(0.1*t)-5000

f=

function_handle with value:

@(t)-81.0327*t+307.2995*exp(0.1*t)-5000

>> fzero(f,0)

ans =

32.0802

RESPUESTA: AL AÑO 32 SE TIENE LA POBLACION DE 5000 PERSONAS.

También podría gustarte