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