Вы находитесь на странице: 1из 9

UNPRG

Taller de Prácticas

1. Escriba una función MATLAB para la siguiente función matemática:


y  x   x 4  12 x 2  5x
La entrada de la función será x , y la salida será y . Escriba la función de forma que
x pueda ser un vector, utilícela para:
a) Calcular y(-3) e y(5)
b) Representar gráficamente la función y  x  para 4  x  4
Solución
function y=fun(x)
y=x.^4-12*(x.^2)+5*x;

>> fun(-3),fun(4)
ans =
-42
ans =
84
>> x=-4:0.5:4;
>> y=fun(x);
>> plot(x,y), grid on
>> legend('x.^4-12*(x.^2)+5*x')
>> title('Función Matemática')

JOSÉ LUIS FARRO QUESQUÉN


UNPRG

2. Escriba una función MATLAB para la siguiente función matemática:


r    2 1,1  sen 2 
La entrada de la función será  (en radianes) y la salida será r . Escriba la función
de forma que  pueda ser un vector, y utilícela para:
a) Calcular r  / 3 y r  3 / 2 
b) Representar gráficamente (en coordenadas polares) r   para 0    2
Solución

function r=fun(theta)
r=2*[1.1+sin(theta).^2];

>> fun(pi/3), fun(3*pi/2)


ans =
3.7000
ans =
4.2000
>> x=0:0.1:2*pi;
>> r=fun(theta);
>> polar(theta,r)

JOSÉ LUIS FARRO QUESQUÉN


UNPRG

3. Calcule las siguientes expresiones a mano, sin utilizar MATLAB . Utilice luego
MATLAB para comprobar que el resultado es correcto.
a. >> 5<=8-3
ans =
logical
1

b. >> y=7<3-1+6<2
y=
logical
1
c. >> y=(7<3)-1+(6>2)
y=
0
d. >> y=2*4+5-7+20/4
y=
11

4. Sean a = 10 y b = 6. Calcule las siguientes expresiones a mano, sin utilizar MATLAB.


Utilice luego MATLAB para comprobar que el resultado es correcto.

a) y  a  b  b

>> a=10, b=6;

a=

10

>> y=a-b>=b

y=

logical

b
b) y  a  b 
2

JOSÉ LUIS FARRO QUESQUÉN


UNPRG

>> a=10, b=6;

a=

10

y=

logical

 b
c) y  a   b  
 2
>> y=a-(b<=b/2)

y=

10

5. Sean v   4  2  1 5 0 1  3 8 2 y w  0 2 1 -1 0 -2 4 3 2 . Calcule las siguientes


expresiones a mano sin utilizar MATLAB. Utilice luego MATLAB para comprobar que el
resultado es correcto.
a) v  w
b) w  v

Solución
>> v=[4 -2 -1 5 0 1 -3 8 2], w=[0 2 1 -1 0 -2 4 3 2]
v=
4 -2 -1 5 0 1 -3 8 2
w=
0 2 1 -1 0 -2 4 3 2
>> v>=w
ans =
1×9 logical array
1 0 0 1 1 1 0 1 1
>> w~=v
ans =
1×9 logical array
1 1 1 1 0 1 1 1 0

JOSÉ LUIS FARRO QUESQUÉN


UNPRG

6. Calcule las siguientes expresiones a mano, sin utilizar MATLAB .Utilice luego MATLAB para
comprobar que le resultado es correcto
a) 5&-2
b) 8  216  5& 2
c)  4&0  8  410
Solución

>> 5&-2
ans =
logical
1
>> 8-216+5&~2
ans =
logical
0
>> ~(4&0)+8*~(410)
ans =
1
7. Escriba un programa script que calcule las raíces reales de una función cuadrática
ax2  bx  c  0 . Llame al fichero cuadrada . Cuando el fichero se ejecute, éste debe pedir
al usuario que introduzca los valores de las constantes a, b y c . Para calcular las raíces de
la ecuación , el programa calculará el discriminante D :
D=b2  4ac
a) 2 x2  8x  3  0
b) 15x2  10 x  5  0
c) 18x2  12 x  2  0

Solución

function [x1,x2]=cuadratica(a,b,c)
% Esta fucnción calcula las raices:x1,x2
% de una ecuacioón cuadrática: ax^2+bx+c
% D (discriminate)
D=(b^2-4*b*c);
x1=(-b+sqrt(D))/(2*a);
x2=(-b-sqrt(D))/(2*a);

a)
>> [x1,x2]=cuadratica(2,8,-3)
x1 =
1.1623
x2 =
-5.1623

JOSÉ LUIS FARRO QUESQUÉN


UNPRG

b)
>> [x1,x2]=cuadratica(15,10,5)
x1 =
-0.3333 + 0.3333i
x2 =
-0.3333 - 0.3333i

c)
>> [x1,x2]=cuadratica(18,12,2)
x1 =
-0.1409
x2 =
-0.5258

8. Graficar la función por partes


 x 2  6 x  8,  15  x  0

fpartes ( x)   2 x  6, 0 x5
4  abs( x  10), 5  x  15

Solución
function y=fpartes(x);
% funcion definida por partes
n=length(x);
y=[];
for i=1:n;
if -15<=x(i) & x(i)<0-eps
y(i)=x(i).^2+12*x(i)-18;
elseif 0<=x(i) & x(i)<5-eps
y(i)=2*x(i)+16;
elseif 5<=x(i) & x(i)<=15
y(i)=4-3*abs(x(i)-10);
else
y(i)=0;
end
>> x=-15:0.01:15;
>> y=fpartes(x);
>> plot(x,y), grid on

JOSÉ LUIS FARRO QUESQUÉN


UNPRG

9. Calcule la solución a la ecuación: cos x 2 x3


Solución
>> x=0:0.01:1;
>> y=2*x.^3-cos(x);
>> plot(x,y), grid on

clear;clc;
disp('CALCULO DE LA RAIZ DE UNA ECUACION NO LINEAL')
disp('POR EL METODO CERRADO DE BISECCION')
error=input('Ingrese el error permitido= ');
xl=input('Ingrese limite inferior xl = ');
xu=input('Ingrese limite superior xu = ');
Es=error;
Ea=100;
xr=0;
i=0;
while Ea>Es
xa=xr;
xr=(xl+xu)/2; %FORMULA DE BISECCION
if funcion(xl)*funcion(xr)<0

JOSÉ LUIS FARRO QUESQUÉN


UNPRG

xu=xr;
Ea=abs((xr-xa)/xr)*100;
elseif funcion(xl)*funcion(xr)>0
xl=xr;
Ea=abs((xr-xa)/xr)*100;
end
i=i+1;
end
fprintf('Raiz Solucion : %12.15f\n',xr)
fprintf('Error aproximado : %12.10f\n',Ea)
fprintf('Numero iteraciones: %12.0f\n',i)

CALCULO DE LA RAIZ DE UNA ECUACION NO LINEAL


POR EL METODO CERRADO DE BISECCION
Ingrese el error permitido= 0.001
Ingrese limite inferior xl = 0
Ingrese limite superior xu = 1
Raiz Solucion : 0.999992370605469
Error aproximado : 0.0007629453
Numero iteraciones: 17

4cos 2 x e0,5 x 5 0
10. 3. Calcule las tres primeras raíces positivas de la ecuación:
.

>>x=0:0.01:5;
>> y=4*cos(2x)-exp(0.5x)+5;
y=4*cos(2x)-exp(0.5x)+5;
>> plot(x,y), grid on

JOSÉ LUIS FARRO QUESQUÉN


UNPRG

CALCULO DE LA RAIZ DE UNA ECUACION NO LINEAL


POR EL METODO CERRADO DE BISECCION
Ingrese el error permitido= 0.001
Ingrese limite inferior xl = 0
Ingrese limite superior xu = 5
Raiz Solucion : 4.999961853027344
Error aproximado : 0.0007629453
Numero iteraciones: 17

JOSÉ LUIS FARRO QUESQUÉN

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