Contents
format long % Para obtener aumentar la precisión de los resultados
Ejercicio 1
x = [10; 20; 40; 60; 80; 100]; y = [x, log(x), log10(x)]; fprintf('\n Numero Natural Log. Natural Log. Decimal \n') fprintf('%4i \t\t %8.4f \t %8.6f \n',y')
Numero Natural Log. Natural Log. Decimal 10 2.3026 1.000000 20 2.9957 1.301030 40 3.6889 1.602060 60 4.0943 1.778151 80 4.3820 1.903090 100 4.6052 2.000000
Ejercicio 2
t=1; while t==1 peso='Indique su peso: ';x=inputdlg(peso);x=str2double(x); estatura='Indique su estatura: '; z=inputdlg(estatura);z=str2double(z); y=x/(z^2); if y<16, fprintf('Infrapeso: Delgadez severa\n'),end if y>=16 & y<17, fprintf('Infrapeso: Delgadez moderada\n'),end if y>=17 & y<18.5, fprintf ('Infrapeso: Delgadez aceptable\n'),end if y>=18.5 & y<25, fprintf ('Peso normal\n'),end if y>=25 & y<30, fprintf ('Sobrepeso\n'),end if y>=30 & y<35, fprintf ('Obeso: Tipo I\n'),end if y>=35 & y<40, fprintf ('Obeso: Tipo II\n'),end if y>=40, fprintf ('Obeso: Tipo III\n'),end cont='¿Desea continuar? (si=1/no=2): '; t=inputdlg(cont);t=str2double(t); end
Peso normal Sobrepeso
Ejercicio 3
Establecemos un rango:
q='Establezca límite para el rango requerido: ';w=inputdlg(q);w=str2double(w) % Establecemos la base para convertir: a='Establezca la base a la que desea cambiar: ';b=inputdlg(a);b=str2double(b) for j=1:w fprintf('%5d\t',j) cambase(j,b), fprintf('\n') end
w =
45
b =
15
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 A
11 B
12 C
13 D
14 E
15 10
16 11
17 12
18 13
19 14
20 15
21 16
22 17
23 18
24 19
25 1A
26 1B
27 1C
28 1D
29 1E
30 20
31 21
32 22
33 23
34 24
35 25
36 26
37 27
38 28
39 29
40 2A
41 2B
42 2C
43 2D
44 2E
45 30
Ejercicio 4
Ejercicio 5
A=[100 0 0 0 -1 1 0;0 200 0 0 0 -1 1;0 0 50 0 -1 0 0;0 0 0 100 0 -1 0;0 300 0 0 0 0 -1;1 0 1 0 0 0 0;1 -1 0 -1 0 0 0]; b=[0 0 -50 -50 -50 25 0]'; y=A\b; Q1=y(1),Q2=y(2),Q3=y(3),Q4=y(4),Tc=y(5),Tp=y(6),Tw=y(7)
Q1 =
5.357142857142858
Q2 =
0.892857142857143
Q3 =
19.642857142857142
Q4 =
4.464285714285714
Tc =
1.032142857142857e+03
Tp =
4.964285714285714e+02
Tw =
3.178571428571428e+02
Ejercicio 6
A=[100 0 0 0 -1 1 0;0 200 0 0 0 -1 1;0 0 50 0 -1 0 0;0 0 0 100 0 -1 0;0 300 0 0 0 0 -1;1 0 1 0 0 0 0;1 -1 0 -1 0 0 0];
b=[0 0 -50 -50 -50 25 0]';
ncond=norm(A)*norm(inv(A))
norma1=norm(A,1)
norma2=norm(A)
norma3=norm(A,inf)
froben=norm(A,'fro')
[L U]=lu(A);
X=inv(U)*inv(L)*b
ncond =
2.648843580330319e+04
norma1 =
501
norma2 =
3.605570476906462e+02
norma3 =
301
froben =
3.905278479186857e+02
X =
1.0e+03 *
0.005357142857143
0.000892857142857
0.019642857142857
0.004464285714286
1.032142857142857
0.496428571428571
0.317857142857143
Ejercicio 7
Introducimos la matriz:
A=[0 1 -1;-6 -11 6;-6 -11 5]; [vectores, valores]=eig(A) % La matriz vectores contendrá en sus columnas los auto-vectores. % La matriz valores solo tendra componentes en su diagonal, consistirán en los auto-valores % Evaluando el programa con la matriz propuesta obtenemos: % v1=[0.7071 0 0.707] v2=[-0.2182 -0.4364 -0.8729] v3=[-0.0921 -0.5523 -0.8285] % valores= -1; -2; -3
vectores =
0.707106781186543 -0.218217890235997 -0.092057461789831
0.000000000000005 -0.436435780471981 -0.552344770738996
0.707106781186552 -0.872871560943970 -0.828517156108490
valores =
-1.000000000000006 0 0
0 -1.999999999999978 0
0 0 -3.000000000000017
Ejercicio 8
Z=[(1.5-2i),(-0.35+1.2i);(-0.35+1.2i),(0.9-1.6i)]; I=[(30+40i);(20+15i)]; V=Z\I S1=V(1)*conj(I(1)), S2=V(2)*conj(I(2))
V =
3.590204703232964 +35.092792858473672i
6.015537032086645 +36.221212342138720i
S1 =
1.511417855435936e+03 + 9.091755976248916e+02i
S2 =
6.636289257738136e+02 + 6.341911913614748e+02i
Ejercicio 9
Ejercicio 10
Ejercicio 11
figure [X Y]=meshgrid(-4:0.3:4); Z=sin(X).*cos(Y).*exp(-(X.^2+Y.^2).^0.5); surf(X,Y,Z)
Ejercicio 12
%CI: y0=1; dy0=0; a=0.15; t0=0; tf=35; %Buscamos la solución mediante el empleo de la función incorporada ode45: [t,Y]=ode45(@fnode,[t0 tf],[y0 dy0],[],a); %y(t): yt=Y(:,1); n=length(yt); plot(linspace(0,35,n),yt) %dy(t)/dt: dyt=Y(:,2); plot(linspace(0,35,n),dyt)
Ejercicio 13
Apartado 1
figure k=5; m=10; fo=10; Bo=2.5; N=2^m; T = 2^k/fo; ts = (0:N-1)*T/N; df = (0:N/2-1)/T; SampledSignal = Bo*sin(2*pi*fo*ts)+Bo/2*sin(2*pi*fo*2*ts); An = abs(fft(SampledSignal, N))/N; subplot(4,2,1) plot(ts, SampledSignal) subplot(4,2,2) plot(df, 2*An(1:N/2)) % Apartado 2 SampledSignal1 = exp(-2*ts).*sin(2*pi*fo*ts); An1 = abs(fft(SampledSignal1, N))/N; subplot(4,2,3) plot(ts, SampledSignal1) subplot(4,2,4) plot(df, 2*An1(1:N/2)) % Apartado 3 SampledSignal2 = sin(2*pi*fo*ts + 5*sin(2*pi*fo/10*ts)); An2 = abs(fft(SampledSignal2, N))/N; subplot(4,2,5) plot(ts, SampledSignal2) subplot(4,2,6) plot(df, 2*An2(1:N/2)) % Apartado 4 SampledSignal3 = sin(2*pi*fo*ts - 5*exp(-2*ts)); An3 = abs(fft(SampledSignal3, N))/N; subplot(4,2,7) plot(ts, SampledSignal3) subplot(4,2,8) plot(df, 2*An3(1:N/2))
Ejercicio 14
ang = linspace(-pi, pi, 180);
r = 2 - 4*cos(ang);
figure
polar(ang, r); % Comando para la representación polar de la función especificada en el ejercicio
Ejercicio 15
Para calcular la tensión trazamos la función tomando como parámetro variable la x y definimos su valor para el momento de inicio:
f=@(x) 10-x/10*cosh(500/x)+x/10; x0=1000; Ta=fzero(f,x0) % Calculamos la longitud: x=linspace(-50,100); w=10; a=150; Lc=2*Ta/w*sinh(2*w*x/Ta); % Realizamos la gráfica de la catenaria: x=linspace(-50,100); y0=5; y=Ta/w*cosh(w*x/Ta)+y0-Ta/w; plot(x,y),grid
Ta =
1.266324360399887e+03