Вы находитесь на странице: 1из 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).

Función general:

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

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

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).

( )
( ) ( )
( )
( )

>> 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 SI NO
Tendríamos pérdidas,
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)
( ) ( )
( ) ( )
( ) ( )
( )
( )

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

Solución: 26.430 mensuales tiene que producir al mes para tener la ganancia.
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.

( )
CODIGO
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)

( )
( )
CODIGO
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

Ecuación 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 ( )

población 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 población de 5000 personas.

Вам также может понравиться