You are on page 1of 8

PROGRAMAS PROPUETOS MATLAB ESIME

PROGRAMA 1:
Realizar un programa para evaluar función por partes que se muestra a continuación, el valor para x debe ser ingresado por el usuario y al final debe de mostrarse el resultado de y. Utilice la estructura de control más adecuada para no realizar comparaciones innecesarias.

Podríamos utilizar la estructura if simple, una para cada condición o bien la estructura if con doble condición, las diferencias se muestran a continuación.

x=4 %% exp(x) para otro x } %%%%%%%%%%%%%%%%%%%%%%%%% x=input('Ingrese un valor= '). end fprintf('Valor de y: %s \n'.PROGRAMAS PROPUETOS MATLAB ESIME La última estructura es la más adecuada para realizar el programa. ya que si la primera condición es verdadera se ejecuta una acción (o acciones) y ya no evalúa las demás condiciones. if(x==1) y=3.num2str(y)) . El código del programa implementado es el siguiente: %%%%%%%%%%%%%%%%%%%%%%%%%% %%MATLAB ESIME 07/03/2013 %%PROGRAMA PARA RESOLVER LA SIGUIENTE FUNCION POR PARTES %% y={3 para x==1 %% 2*x + 1 para x=2. si esta es verdadera se ejecuta una acción (o acciones) y otra(s) si la condición es falsa.x=3. elseif (x==1||x==2||x==3) %(x==1 o x==2 o x==3) y=2*x + 1. si la primera condición es falsa se evalúa una segunda condición. else %exp(x) para otro x y=exp(x).

el operador * se utiliza para realizar la multiplicación matricial que conocemos de algebra lineal. Estos sistemas lineales admiten una sencilla representación matricial. El programa puede continuación. . no confundir con el operador. realizarse utilizando la estructura switch.* que realiza la multiplicación elemento a elemento. la cual se muestra a Recordando. y el operador + puede utilizarse también para la suma de matrices. multiplicación matricial y solución de un sistema de ecuaciones lineales. El usuario deberá de observar en un menú las opciones disponibles y e ingresar la operación a realizar. recordemos que la suma se realiza elemento a elemento.PROGRAMAS PROPUETOS MATLAB ESIME PROGRAMA 2: Realizar un programa para hacer operaciones básicas con matrices: suma. Uno de los problemas fundamentales del Algebra Lineal es la resolución simultánea de ecuaciones lineales. siendo el caso más simple aquel en el que el número de incógnitas coincide con el número de ecuaciones.

por medio de la ecuación estándar Ax = b. denotada por *A=A* =I Donde I es la matriz identidad. es la solución del sistema.PROGRAMAS PROPUETOS MATLAB ESIME De esta forma. y A una matriz cuadrada invertible. cumple lo siguiente: Por lo tanto podríamos realizar lo siguiente: *A x = I*x= *b *b -> (Multiplicamos ambos lados por x= *b ) Donde el vector columna x. donde x y b son vectores columna. La solución de este sistema se puede realizar de la siguiente forma: Sabemos que la inversa de una matriz A. Así el programa que se realizó en matlab es el siguiente: . el vector x como Variables del sistema y el vector b son los términos independientes del sistema. El objetivo es encontrar los valores de x1. x2 y x3 que son las incógnitas del sistema. se puede utilizar la notación matricial para la solución del sistema de ecuaciones: A x b Así se puede denotar Ax = b donde la matriz A se denomina Matriz de coeficientes del sistema.

.. 5 -2] %%Para la matriz B ingresamos:[4.... B=input('Ingrese la matriz B:').%% Donde A^(-1) es la matriz inversa de A y en matlab se encuentra con la funcion: inv(A) disp((inv(A))*B)....3684..........%% A es una matriz de coeficientes y B es un vector que contiene las soluciones del sistema de ecuaciones lineales opcion=input('\n Ingrese la opcion: '...(x)')............ end .....6] %%el reultado que debe entregar es: x=1. fprintf('%s \n'..'s')....... disp(A+B).%% El segundo parámetro (la 's') de input indica que ingresaremos un carácter o una cadena de caracteres switch(opcion) case '+' A=input('Ingrese la matriz A:')...... disp('La solucion del sistema:(x=A^(-1)*B) es'). case '*' A=input('Ingrese la matriz A:'). B=input('Ingrese la matriz de soluciones (B):')...'Resolver sistema de ecuaciones:(Ax=B)..(+)').(*)')... case 'x' %%Por ejemplo el sistema: 2x + 3y = 4 5x – 2y = 6 debe ingresarse: %%Para la matriz A se ingresa:[2 3...'Multiplicacion matricial:(C=A*B). fprintf('%s \n'..'OPERACIONES CON MATRICES') fprintf('%s \n'..'Suma:(C=A+B).. B=input('Ingrese la matriz B:'). %%(si no se cumple ningun caso de los anteriores se muestra el mensaje:) otherwise disp('Ingresa una opcion valida').4211 A=input('Ingrese la matriz de coeficientes (A):')...PROGRAMAS PROPUETOS MATLAB ESIME %%%%%%%%%%%%%%%%%%%%%%%%%% %%MATLAB ESIME 07/03/2013 %%PROGRAMA PARA REALIZAR ALGUNAS OPERACIONES CON MATRICES %%%%%%%%%%%%%%%%%%%%%%%% fprintf('\n\n %s \n\n'.. disp(A*B).. y=0.

% Valor en milimetros case 'cm' valor_f=valor*100. la cual comienza con los números 0 y 1.pies y pulgadas). para transformar un valor en metros a otra unidad de longitud (mm. switch unidad case 'mm' valor_f=valor*1000.utilice la estructura de control más adecuada para no realizar comparaciones innecesarias. in : '. ft. % Valor en pulgadas otherwise error('Valor no valido') end disp([num2str(valor) ' metros.PROGRAMAS PROPUETOS MATLAB ESIME PROGRAMA 3: Realizar un conversor de unidades. TRANSFORMAR UN VALOR EN METROS A OTRA UNIDAD DE LONGITUD: %%%%%%%%%%%%%%%%%%%%%%%% unidad=input('Digite la unidad a llegar: mm. % Valor en centimetros case 'ft' valor_f=valor*3. valor=input('El valor a convertir: '). son ' num2str(valor_f) ' ' unid]) PROGRAMA 4: Realizar un programa para obtener la sucesión de Fibonacci.37. De esta forma para los primeros 6 términos tenemos que: .cm. % Valor en pies case 'in' valor_f=valor*39. El número de elementos de la serie debe ser ingresado por el usuario. cm.281. El programa que se realizó en matlab es el siguiente: %%%%%%%%%%%%%%%%%%%%%%%%%% %%MATLAB ESIME 07/03/2013 %%CONVERSOR DE UNIDADES.'s'). los elementos siguientes de la sucesión se obtienen sumando los dos elementos anteriores.

….1.1. observemos que de manera general el elemento s(i) está dado por: S(i)= S(i-1) + S(i-2). por lo que el contador del for deberá de iniciarse en 3 y finalizar en el valor que ingresa el usuario. Así para el tercer término: S (3)= S(3-1)+ S(3-2)= S(2)+ S(1) S(3)=1 + 0=1.(1+1) Obteniendo el quinto término: 0. Recordemos que a diferencia de C y C++ en matlab los arreglos inician con el índice 1 y no en cero.1.1. Podríamos utilizar un ciclo for para hallar los elementos siguientes.S(n) . 1. Para encontrar los siguientes elementos: S(3). S(4).(2+3) Así la sucesión para los primeros 6 numeros es: 0.1.2.5… Para realizar el programa tomamos en cuenta que la sucesión se inicia con los números 0 y 1 de manera que podríamos declarar un vector columna e iniciarlo con esos valores: S=[0 1] Para asignar el tercer elemento al vector columna S bastaría con hacer S (3)=1. . 1.(1+2) Obteniendo el sexto término: 0. 2. 3.PROGRAMAS PROPUETOS MATLAB ESIME Obteniendo el tercer término: 0.2.3.1.1.(0+1) Obteniendo el cuarto término: 0.

la cual %comienza con los números 0 y 1.matlab@gmail. Email: esime. %% Se obtienen los elementos siguientes de la serie end disp('La sucesion de Fibonacci es: ') disp(S).%% Valores de inicio for i=3:n S(i)= S(i-1)+ S(i-2). %%%%%%%%%%%%%%%%%%%%%%%% n=input('ingrese el número de elementos a obtener de la sucesion: ’) S=[0 1]. los términos siguientes de la %sucesión se obtienen sumando los dos términos anteriores.com Facebook: Matlab Esime .PROGRAMAS PROPUETOS MATLAB ESIME El programa que se realizó en matlab es el siguiente: %%%%%%%%%%%%%%%%%%%%%%%%%% %%MATLAB ESIME %% %%SUCESION DE FIBONACCI %Realizar un programa para obtener la serie de Fibonacci.