Академический Документы
Профессиональный Документы
Культура Документы
Introduccin a MATLAB
Universidad Surcolombiana
24/08/2015
II. RESULTADOS
Las evidencias de esta prctica son los algoritmos desarrollados en Matlab que se
presentan a continuacin.
1.
%Realizar un programa (m-file) que pida un dato,
%lo evale en la siguiente expresin y entregue su resultado.
clc;
clearvars;
y = input ('Ingrese un numero...');
x= (sqrt(5+y))/(25);
fprintf('***El valor de x es igual a %f \n',x);
if (mult == suma)
disp('La suma y multiplicacin son iguales');
end
disp('Fin');
2.
%
y
%
%
%
%
%
%
-
clear all;
clc;
cant = input('Cuantos elementos va a ingresar...') ;
for contador=1:cant
vector(contador) = input('Ingrese el elemento...');
end
maxim = max(vector);
vector_al_cuadrado = vector .* vector;
vector_por_tres = vector .* 3;
minim = min(vector);
ordenado = sort(vector);
disp('a)');
disp(maxim);
disp('b)');
disp(vector_al_cuadrado);
disp('c)');
disp(vector_por_tres);
disp('d)');
disp(minim);
disp('e)');
disp(ordenado);
3.
% Dadas dos matrices de 3 filas y 3 columnas ingresadas por teclado,
realizar los siguientes
% clculos y mostrar los resultados:
% a. Sumar las dos matrices.
% b. Hallar el determinante de cada matriz. (Usar funcin det - ver help
det)
% c. Hallar la inversa de cada matriz. (Usar funcin inv - ver help inv)
% d. Multiplicar las dos matrices elemento a elemento.
% e. Realizar la multiplicacin matricial de las dos matrices.
% f. Multiplicar el elemento (1,2) de la primera matriz con el elemento
(3,2) de la segunda
% matriz.
% g. Dividir el elemento (3,3) de la primera matriz con el elemento (1,1)
de la segunda matriz.
clear all;
clc;
disp('llene la 1ra matriz');
for fila=1:3
for columna=1:3
fprintf('Fila %f Columna %f ',fila, columna);
matriz1(fila,columna)= input('...');
end
end
disp('llene la 2da matriz');
for fila=1:3
for columna=1:3
fprintf('Fila %f Columna %f ',fila, columna);
matriz2(fila,columna)= input('...');
end
end
suma = matriz1 + matriz2;
determ1 = det(matriz1);
determ2 = det(matriz2);
inversa1 = inv(matriz1);
inversa2 = inv(matriz2);
mult_ele_ele = matriz1.*matriz2;
mult_matricial = matriz1 * matriz2;
punto_f = matriz1(1,2)*matriz2(3,2);
punto_g =matriz1(3,3)/matriz2(1,1);
disp('Ejercico a) Suma');
disp(suma);
disp('Eercicio b) Determinantes');
disp(determ1);
disp(determ2);
disp('Ejercicio c) Inversas');
disp(inversa1);
disp(inversa2);
disp('Ejercicio d) Multiplicacion elemento por elemento');
disp(mult_ele_ele);
4.
%Tres personas deciden invertir su dinero para fundar una empresa. Cada
una de ellas
%invierte una cantidad distinta. Obtener el porcentaje que cada quien
invierte con respecto a
%la cantidad total invertida.
clear all;
clc;
a = input('Ingrese inversion persona 1...');
b = input('Ingrese inversion persona 2...');
c = input('Ingrese inversion persona 3...');
total = a+b+c;
porc1= (a*100)/total;
porc2= (b*100)/total;
porc3= (c*100)/total;
5.
%Una compaa dedicada al alquiler de automviles cobra $300 hasta un
mximo de 300 km
%de distancia recorrida.
%Para ms de 300 km y hasta 1000 km, cobra $300 ms un monto adicional de
$20 por cada kilmetro excedido sobre 300.
%Para ms de 1000 km cobra $300 ms un monto adicional de $15 por cada
kilmetro excedido sobre 300
%y $10 por cada kilmetro excedido sobre 1000.
%Disee un programa que determine el monto a pagar por el
%alquiler de un vehculo, dado el kilometraje recorrido.
clearvars;
clc;
dist = input('Ingrese la distancia recorrida... ');
pagar = 0;
precioKm = 1;
6.
%Hacer un algoritmo que pida al usuario un nmero N e imprima nmeros
sucesivos
%(1,2,3,4) hasta que el ltimo sea el anterior a N. a) Utilice la
estructura while-end b)
%Utilice la estructura for-end .
clearvars;
clc;
num = input('Ingrese un numero..');
contador=1;
numMenosUno= num - 1 ;
disp('*********************')
disp('Utilizando While-end');
while (contador<=numMenosUno)
disp(contador);
contador = contador +1 ;
end
disp('*********************')
disp('Utilizando for-end');
for contador=1:numMenosUno
disp(contador)
end
disp('Fin')
disp('*********************')
7.
%Disear un algoritmo que calcule el rea de un tringulo en funcin de
las longitudes
%de sus lados, para ello tenga en cuenta la siguiente expresin:
%donde, A,B,C, con los lados del tringulo y p es el semiperimetro, que
se expresa como:
clear all;
clc;
lado1 = input ('Ingrese lado 1...');
lado2 = input ('Ingrese lado 2...');
lado3 = input ('Ingrese lado 3...');
p= (lado1+lado2+lado3)/2;
area= sqrt(p*(p-lado1)*(p-lado2)*(p-lado3));
fprintf('El rea del triangulo es...%.2f \n',area);
8.
%Escribir en pantalla los nmeros de 50 al 5 de 5 en cinco, es decir, en
pantalla debe
%salir: 50, 45, 40, ..., 5.
clear all;
clc;
x= 50:-5:5;
disp(x);
9.
%Realizar un programa que reciba nmeros entre 0 y 10, cuando el usuario
escriba un
%numero diferente por fuera de este rango, el programa termina. Al final,
el programa dice
%cuantos nmeros ingres.
clear all;
clc;
x=1;
contador=0;
while( (x>=0 && x<=10 ) )
x= input('Ingrese un numero...');
contador=contador+1;
end
fprintf('Se ingresaron %.0f numeros...\n',contador);
disp('****************************');
disp('fin');
10.
%crear un programa que represente esta funcin hasta que f(t) = 50. Dada
una funcin tal
%que:
% f(x) = 2(e^(t/10))
clear all;
clc;
t=1;
ejex=[];
ejey=[];
while t<=50
f= 2 * (2.71828 ^(t./10)
);
Se puede concluir que Matlab es un software que nos permite utilizar las
estructuras bsicas de programacin de una manera muy sencilla y similar otros
grandes lenguajes de programacin.
V. REFERENCIAS
Gilat, A. (2014). MATLAB, An Introduction with Applications (5 ed.). Wiley.
Lent, C. S. (2013). Learning to Program with MATLAB (1 ed.). Wiley.
Perez Lopez, C. (2014). MATLAB Matrix Algebra (1 ed.). Apress.