250 likes | 456 Views
Ejemplos de Programas. Matlab v. 5.3. % Programa sumav1.m % Este programa suma de las diez componentes de un vector (1,10) % Autor: Juan Carlos Gorostizaga (18/10/2007) v = fix(10 * rand(1,10)); s = 0; for i = 1:10 s = s + v(i); end disp(v);
E N D
Ejemplos de Programas Matlab v. 5.3
% Programa sumav1.m % Este programa suma de las diez componentes de un vector (1,10) % Autor: Juan Carlos Gorostizaga (18/10/2007) v = fix(10 * rand(1,10)); s = 0; for i = 1:10 s = s + v(i); end disp(v); disp('la suma de las componentes es:'), disp(s)
Escalas de Temperaturas ( Farenheit Celsius) ( Farenheit Celsius)
% autor: Angel Gonzalez % Fecha: 9 /11/2006 % Programa Celsius para cambiar de grados celsius a farenheit y viceversa x = input('Introducir (1)... para Celsius --> Farenheit. (2) Para Farenheit --> Celsius '); if x ==1 C = input('introduce grados Celsius '); F = C * (9/5)+32; disp(‘ los grados Farenheit son: '); disp(F); else F = input(‘ introduce grados Farenheit '); C = (F-32) * (5/9); disp(‘ los grados Celsius son: '); disp(C); end
Método de Newton para calcular raíces cuadradas: Ejemplo: Paso 1º: Una aproximación inicial → x0 = 5/2 = 2.5 Paso 2º: Dividir 5 entre x0 sumarle x0 y esto dividirlo entre 2. Paso 3º: Dividir 5 entre x1 sumarle x1 y esto dividirlo entre 2. Etc., etc.
% Programa raiz5 paracálculo de la raíz de 5 por el método de Newton % Autor: Juan C. Gorostizaga (17/10/2007) x0 = 2.5; % semilla inicial T = 10; % cantidad total de iteraciones for i = 1:T x = 1/2 * (x0 + 5/x0); x0 = x; end; disp('Raíz de 5 = '), disp(x)
function v1 = raiznewton(x) % raiznewton(x) fuciòn que computa la raiz cuadrada por el métod de Newton % autor: Juan C. Gorostizaga 9/10/2005 % Comprobar si x es positivo if x <= 0, error('En raiznewton(x) : el argumento x debe ser positivo'); end; % aproximación inicial x0 = (1+x)/2; % ciclo iterativo para computar la raiz cuadrada for i = 1:100 xn = (x0 + x/x0)/2; if abs(xn - x0)/xn < eps, break, end; x0 = xn; end v1 = xn;
Programas y funciones a realizar (en Matlab) 1. Construir una función llamada toabsg(g,m,s) que convierta un ángulo dado en grados, minutos, segundos en “grados absolutos”. Ejemplo de utilización: toabsg(35, 47, 29) → 35.7913888 2. Construir una función llamada togms(g) que convierta un ángulo dado en grados absolutos en grados,minutos, segundos. Ejemplo de utilización: togms(35.7913888) → 35º 47’ 29.000 “
Construir una función llamada tor(g,m,s) que convierta un ángulo en grados, minutos, segundos en radianes. Ejemplo de utilización: • tor(120, 36, 41) → 2.1050658 • 4. Construir una función llamada tog(r) que convierta radianes en grados-minutos-segundos. Ejemplo de utilización: • tog(2.1050658) → 120º 36’ 41.000”
Construir una función llamada validoT1(a, b, c, B, C) que indique si es válido el T.E. Rectángulo con los datos: a, b, c, B y C introducidos en grados absolutos (e. g: 54.3, 120.25 , etc. ). En caso de que no sea válido el triángulo, que indique las propiedades en que falla.
COMIENZO DEL PROGRAMA % ------------ Propiedad 2 ------------------------- cont = 0; if ~((b<90 & B<90) | (b>90 & B>90)) cont=cont+1; disp(‘ falla propiedad 2 (b-B) ') end if ~((c<90 & C<90) | (c>90 & C>90)) cont=cont+1; disp(‘ falla propiedad 2 (c-C) ') end % --------- Fin Propiedad 2 ----------------------------
6. Construir una función llamada validoT2(b, c, A, B, C) que indique si es válido el T.E. Rectilatero con los datos: a, b, c, B y C introducidos en grados absolutos (e. g: 54.3, 120.25 , etc. ). En caso de que no sea válido el triángulo, que indique las propiedades en que falla.
CLAVES A UTILIZAR: Conocido los datos Triángulo rectángulo: T1 “ rectilátero: T2 “ oblicuángulo: T3 Lados: L1, L2, L3 Ángulos: A1, A2, A3
Ejemplos: Triáng. Rectángulo, conocidos a, B: T1L1A2 Triáng. Rectilatero, conocidos B,C: T2A23 Triáng. Acutángulo, conocidos a, b, C:T3L12A3
Grupo A: T1L12, (T1L13) Grupo B: T1L23 Grupo C: T1L1A2, (T1L1A3) Grupo D: T1A23 Grupo E: T1L2A3, (T1L3A2) Grupo F: T1L2A2, (T1L3A3)
Grupo A: T2A12, (T2A13) Grupo B: T2A23 Grupo C: T2L2A1, (T2L3A1) Grupo D: T2L23 Grupo E: T2L2A3, (T2L3A2) Grupo F: T2L2A2, (T2L3A3)
EJEMPLO: Función para resolver Triángulos rectángulos conocidos B y C. T1A23
function T1A23(Bg,Bm,Bs,Cg,Cm,Cs) % Datos: Los dos ángulos, B y C ---> Se calculan a, b, c. % autor: Juan Carlos Gorostizaga (26/3/2008) lada = acos(1/(tan(tor(Bg,Bm,Bs))*tan(tor(Cg,Cm,Cs)))); ladb = acos(cos(tor(Bg,Bm,Bs))/sin(tor(Cg,Cm,Cs))); ladc = acos(cos(tor(Cg,Cm,Cs))/sin(tor(Bg,Bm,Bs))); [ladag, ladam, ladas] = tog(lada); [ladbg, ladbm, ladbs] = tog(ladb); [ladcg, ladcm, ladcs] = tog(ladc); fprintf('Lado a = %14.8g\n', ladag, ladam, ladas); fprintf('Lado b = %14.8g\n', ladbg, ladbm, ladbs); fprintf('Lado c = %14.8g\n', ladcg, ladcm, ladcs);
EJEMPLO: Resolvamos el Triángulo rectángulo: B = 78º 27’ 31” C = 109º 12’ 54”