Professional Documents
Culture Documents
Maestría en matemática
Matlab
Práctica II
Rafael Rodríguez Alvarado
1. Crear un script que resuelva los ejercicios de práctica 3.4 de la pág. 66 del libro de
texto.
disp('3. sen^-1(1).')
asin(1)
x=45*pi/180;
cos(x)
disp('6. Encuentre el ángulo cuyo seno es 0.5. ¿Su respuesta está en grados o
radianes?')
asin(0.5)
disp('Esta respuesta está en radianes')
csc(60*pi/180)
2. Crear un script que resuelva los ejercicios de práctica 3.5 de la pág. 72 del libro de
texto.
disp('Considere la siguiente matriz: x=[4 90 85 75; 2 55 65 75; 3 78 82 79;1
84 92 93]')
x=[4 90 85 75; 2 55 65 75; 3 78 82 79;1 84 92 93]
disp('1. ¿Cuál es el valor máximo en cada columna?')
max(x)
3. Crear un script que resuelva los ejercicios de práctica 3.6 de la pág. 73 del libro de
texto.
disp('4. ¿Cuál es la mediana para cada fila? ¿Cuál es la mediana para toda la
matriz?')
median(x')
4. Crear un script que resuelva los ejercicios de práctica 3.7 de la pág. 76 del libro de
texto.
disp('2. Use la función sort para ordenar cada columna en orden ascendente.
')
sort(x)
disp('3. Use la función sort para ordenar cada columna en orden
descendente.')
sort(x,'descend')
5. Crear un script que resuelva los ejercicios de práctica 3.8 de la pág. 84 del libro de
texto.
6. Crear un script que resuelva los ejercicios de práctica 3.9 de la pág. 89 del libro de
texto.
8. Crear un script que resuelva los ejercicios de práctica 3.11 de la pág. 98 del libro de
texto.
disp('2. Use la función date para agregar la fecha a su hoja de trabajo. ')
date
disp('b.')
5*10^500
disp('c.')
1/5*10^500
disp('d.')
0/0
disp('En los problemas a,b y c los resultados son muy grandes y en el d la
división entre cero no esta definida.')
9. Crear un script para resolver cada problema de las páginas 101-105 del libro de
texto.
%Problema 3.1
%Calcular la raíz cúbica de -5, tanto con la función nthroot como con elevar
-5 a la potencia 1/3
a=nthroot(-5,3)
b=(-5)^(1/3)
%Los resultados son diferentes porque la función nthroot no da números
complejos.
%Para verificar las respuestas elevo al cubo ambos resultados
c=(-1.7100)^3
d=(0.8550 + 1.4809i)^3
%Por lo que, elevando al cubo ambos resultados usando ambos metodos da el
mismo valor, -5.
%Problema 3.2
%¿Cuál es el logb de 10 cuando b se define de 1 a 10 en incrementos de 1?
%Calcula el logb de 10
a=log(x);
c=log (b);
logb10=a./c
%Problema3.3
%Con la ecuación para la población actual,
%encuentrar cuántos conejos se tendrán al final de 10 años.
P=P0*exp(r*t);
round(P)
%Problema 3.4
%Con la Ecuación Arrhenius, encontrar los valores de k a diferentes
%temperaturas
%Problema 3.5
%¿Cuánto calor por segundo debe remover de la casa el acondicionador de aire?
F=100; %Define la energia que expulsa cada foco en J/s
A=500; %Define la energia que expulsa cada aparato en J/s
E=3000; %Define el calor que se filtra del exterior
%Problema 3.6
%¿De cuántas formas se pueden ordenar 4 personas en una linea?
Formas_B=factorial(B)
%Problema 3.7
%¿Cuántos comités de dos personas puedo crear si tengo 4 personas?
n=4; %Numero de personas
r=2; %Numero de personas que puedo elegir
%Problema 3.8
%Calcular cuantas manos diferentes de 5 cartas son posibles
Elegir_5=factorial(n)/(factorial(r)*factorial(n-r));
%Problema 3.9
%Calcular cuantos numeros primos existem entre 10,000 y 20,000
a=10000
b=20000;
c=primes(a);
%Calcula numeros primos menores que 10,000
d=primes(b);
%Cantidad de numeros primos menos que 10,000
Menores_10000=length(c);
%Cantidad de numeros primos menos que 20,000
Menores_20000=length(d);
%Cantidad de numeros primos entre 10,000 y 20,000
Primos10_20=Menores_20000-Menores_10000
%Problema 3.10
%Crear una tabla con las funciones de seno, coseno y tangente para angulos
%de 0 a 2*pi, con espaciamiento de 0.1 rad
x=[0:0.1:2*pi]; %Define los ángulos
%Problema 3.11
%Calcular el desplazamiento de un resorte oscilatorio en diferentes tiempos
x=A*cos(w*t);
Desplaz_Tiempo=table(t',x','VariableNames',{'Tiempo' 'Desplazamiento'})
%Problema 3.12
%Calcular la aceleracion del resorte oscilatorio del ejercicio ant. en
diferentes tiempos
x=A*cos(w*t);
a=-A*(w^2)*cos(w*t);
Desplaz_Tiempo=table(t',x',a','VariableNames',{'Tiempo' 'Desplazamiento'
'Aceleracion'})
%Problema 3.13
%Calcular las alturas máxima y mínima que puede tener el edificio
h_max=d*tan(a_max)
h_min=d*tan(a_min)
%Problema 3.14
%Calcular a qué ángulo del suelo tendré que inclinar la cabeza para ver la
%punta del edificio
%Calcula el ángulo
angulo=atan(h/d)*180/pi
%Problema 3.15
%Encontrar la temperatura máxima medida por cada termocople:
T1=[84.3 86.4 85.2 87.1 83.5 84.8 85.0 85.3 85.3 85.2 82.3 84.7 83.6];
T2=[90.0 89.5 88.6 88.9 88.9 90.4 89.3 89.5 88.9 89.1 89.5 89.4 89.8];
T3=[86.7 87.6 88.3 85.3 80.3 82.4 83.4 85.4 86.3 85.3 89.0 87.3 87.2];
%Calcula la temperatura máxima
Temp_MaxT1=max(T1)
Temp_MaxT2=max(T2)
Temp_MaxT3=max(T3)
%Calcula la temperatura minima
Temp_MinT1=min(T1)
Temp_MinT2=min(T2)
Temp_MinT3=min(T3)
%Problema 3.16
%Mostrar que el rango máximo se obtiene a aproximadamente Pi/4
v_0=100; %Define la velocidad inicial
g=9.81; %Define la gravedad
a=[0:0.05:pi/2];%Define los angulos con respecto al eje x
%Problema 3.17
%¿Cuál función representa mejor la calificación, la media o la mediana?
Media=mean(G)
Mediana=median(G)
Desv_estandar=std(G)
%La mediana representa la calificación más usual porque 75 se repite dos
%veces y ese fue el resultado de la mediana.
%Cuenta y ordena las calificaciones
format short
Num_calif=length(G)
Orden_calif=sort(G)
%Problema 3.18
%Generar 10, 000 números aleatorios gaussianos con una media de 80 y
%desviación estandar de 23.5
Media=mean(x)
Desv_estandar=std(x)
%Problema 3.19
%Agregar la fecha actual a esta tarea
Fecha_Actual=date
11. Un plano inclinado forma un ángulo de con la horizontal. Se aplica una fuerza en
dirección paralela al plano para que una caja de 15 kg se deslice hacia arriba con una
aceleración. Considere que varía a razón de 0.2 desde hasta . Realice
una tabla de fuerza en función de la aceleración.
F=cos(b)*m.*ac;
A=[ac' F']
12. Del lado izquierdo de una polea cuelga un cuerpo de masa mediante una cuerda que
pasa por una polea. Del lado derecho de la polea cuelga un cuerpo de 5 Kg que a su
vez lleva colgando mediante otra cuerda un cuerpo de 4 Kg. Calcular aceleración del
sistema y tensión de cada una de las cuerdas cuando varía de 1kg a 8 Kg de masa a
razón de 0.2 kg
P1=m1*g;
P2=m2*g;
P3=m3*g;
P=P3+P2-P1;
acel=P/(m1+m2+m3)
a=[1:0.2:8];
T1=m1*a+P1;
T2=-m2*a+P3;
Tabla=[a' T1' T2']
13. Crear un script que resuelva los ejercicios de práctica 4.1 de la pág. 112 del libro de
texto.
14. Crear un script que resuelva los ejercicios de práctica 4.2 de la pág. 116 del libro de
texto.
15. Crear un script que resuelva los ejercicios de práctica 4.3 de la pág. 128 del libro de
texto.
disp('5. Cree una matriz 4 x 6 en la que todos los elementos tengan un valor
de pi.')
ones(4,6)*pi
disp('6. Use la función diag para crear una matriz cuya diagonal tenga
valores de 1, 2, 3.')
x = [1,2,3];
diag(x)
disp('c. Confirme que la suma de las filas, columnas y diagonales son todas
iguales.')
sum(x)
sum(x')
sum(diag(x))
sum(diag(fliplr(x)))
16. Crear un script para resolver cada problema de las páginas 129-132 del libro de
texto.
%Problema 4.1
%cree las siguientes matrices y uselas en los ejercicios que siguen
a=[15 3 22;3 8 5;14 3 82]
b=[1;5;6]
c=[12 18 5 2]
% cree una matriz llamada d a partir de la tercera columna de la matriz a.
d=a(:,3)
%combine la matriz b y la matriz d para crear la matriz e, una matriz
%bidimencional con tres fila y dos columna.
e=[b,d]
%Combine la matriz b y la matriz d para crear la matriz f, una matriz
unidimensio-nal con seis filas y una columna.
f=[b;d]
%Cree una matriz g a partir de la matriz a y los primeros tres elementos de
la matriz c, con cuatro filas y tres columnas.
g=[a;c(1,1),c(1,2),c(1,3)]
%Cree una matriz h con el primer elemento igual a a1,3, el segundo elemento
igual a c1,2 y el tercer elemento igual a b2,1.
h=[a(1,3),c(1,2),b(2,1)];
%Problema 4.2
thermo_score=[1 68 45 92;2 83 54 93;3 61 67 91;4 70 66 92;5 75 68 96;6 82 67
90;7 57 65 89;8 5 69 89;9 76 62 97;10 85 52 94;11 62 34 87;12 71 45 85;13 96
56 45;14 78 65 87;15 76 43 97; 16 68 76 95;17 72 65 89;18 75 67 88;19 83 68
91;20 93 90 92]
%Extraiga las calificaciones y número de estudiante para el estudiante 5 en
un vector fila llamado student_5.
student_5=thermo_score(5,:)
de_test_2=std(test_2)
varianza_test_2=var(test_2)
de_test_3=std(test_3)
varianza_test_3=var(test_3)
%Si supone que cada examen valía 100 puntos, encuentre la calificación
%final total y el porcentaje final de cada estudiante. (Tenga cuidado de no
sumar el número de estudiante.)
cf=thermo_score(1:20,2:4)
CF=sum(cf')/3
Cfinal=sum(cf')'
Porcentaje_final=(CF')
%Cree una tabla que incluya los porcentajes finales y las calificaciones de
%la tabla original.
nueva_tabla=[thermo_score,Cfinal,Porcentaje_final]
% ordene la matriz sobre la base del porcentaje final, de mayor a menor (en
% orden descendente), y conserve juntos los datos de cada fila.
A=sort(nueva_tabla,2)
% Problema 4.3
% Cree un vector columna llamado times que vaya de 0 a 24 en incrementos de 2
horas.
times=[0:2:24];
Thermocouple_1=[84.3 86.4 85.2 87.1 83.5 84.8 85.0 85.3 85.3 85.2 82.3 84.7
83.6];
Thermocouple_2=[90.0 89.5 88.6 88.9 88.9 90.4 89.3 89.5 88.9 89.1 89.5 89.4
89.8];
Thermocouple_3=[86.7 87.6 88.3 85.3 80.3 82.4 83.4 85.4 86.3 85.3 89.0 87.3
87.2];
% combine el vector times que creo en la parte a, con los datos de
thermocouple para crear unamatriz que corresponda a la tabla del problema.
A=[times',Thermocouple_1',Thermocouple_2',Thermocouple_3']
Valor_maxtimes=max(times)
Valor_mintimes=min(times)
%Problema 4.8
%matrices especiales
%cree una matriz de ceros del mismo tamano de las matrices a,b,c
%delproblema4.1
Tamano_a=size(a)
Tamano_b=size(b)
Tamano_c=size(c)
%crear una matriz cero del mismo tamano que las matrices a,b,c
zeros(3,3)
zeros(3,2)
zeros(1,4)
%Problema 4.9
%cree una matriz magica de 6x6
A=magic(6)
suma_fila=sum(A')
suma_columna=sum(A)
suma_diagonal_1=sum(diag(A))
B=fliplr(A)
suma_diagonal_2=diag(B)
sum(suma_diagonal_2)