18
MATLAB

Clase 7

Embed Size (px)

Citation preview

Page 2: Clase 7

El path browser se encuentra dentro de la carpeta de instalación que trae el MATLAB incluido.

Para convocar los archivos escritos, solo se debe escribir el nombre del archivo guardado en la ventana de comandos, y las instrucciones que hayan sido escritas, serán ejecutadas.

Page 3: Clase 7

Se utilizará “Hola mundo”. Primeramente, abrimos un documento de texto, ya sea desde el editor de archivos M que incluya el MATLAP o desde cualquier otro que nos permita editar el ASCII, en él escribimos la siguiente línea:

disp('Hola mundo')La función disp muestra en la ventana de

comandos el string que se le envía como comando.

Guardamos ahora el documento como Saludar.m o el nombre que se desee, con su extensión m.

Ejemplo

Page 4: Clase 7

Ahora ingrese el nombre del archivo guardado en la ventana de comandos, sin la extensión .m esta vez para el ejemplo de arriba.>>saludarHola mundo

Este es un ejemplo bastante simple y claro que es lo que hace un archivo de comandos cuando es llamado.

Page 5: Clase 7

• Funciones

Una función es un archivo M similar al archivo M de comandos, con una diferencia en su definición. La primera línea de un función posee la siguiente estructura:function[argumentos_salida] - nombre[argumentos_entrada]

Nombre corresponde al nombre de la función Argumentos_salida representa una lista de elementos del

retorno de la función. Argumentos_entrada son los parámetros que recibe la

función para poder realizar su proceso.

Page 6: Clase 7

¡IMPORTANTE!

El nombre de la función debe coincidir con el nombre del archivo M con el cual se le

guarda. De no ser esto, podrían existir errores de directorio y/o ejecución.

Page 7: Clase 7

Dado el script llamado cuadrado.m:% este es un script que eleva un número al cuadradonro = input('Ingrese un número positivo:');nro = nro * nro;disp('El número ingresado elevado al cuadrado es: ');

disp(nro);Y cuando escribimos en el Workspace:>> cuadradoeste es un script que eleva un número al cuadrado

EJEMPLO

Page 8: Clase 7

TEXTO •Cadena de caracteres rodeado por comillas simples (´) y se manejan como vectores filas.

HIPERMATRICES •Matrices que tienen más de dos dimensiones y sus elementos pueden ser números, caracteres, estructuras.

ESTRUCTURAS •Agrupación de datos de tipo diferente bajo un mismo nombre. A los datos les llamamos campos.

Page 9: Clase 7

MATEMÁTICA SENCILLA Matlab ofrece la posibilidad de realizar las siguientes

operaciones matemáticas:

OPERACIÓN SÍMBOLO EXPRESION MATLAB

Suma + a+bResta - a-b

Multiplicación * a*bDivisión / a/bPotencia ^ a^b

Page 10: Clase 7

VARIABLES EMPLEADASVARIABLE DEFINICIÓN DE VARIABLE VALOR

Ans Variable usada por defecto para almacenar el último resultado

? ? ?

Pi Razón de una circunferencia a su diámetro

3.1416

Eps Número más pequeño, tal que cuando se le suma 1, crea un

número en coma flotante en el computador mayor que 1

2.2204e-016

Inf Infinito Inf

Nan Magnitud no numérica NaN

i y j i = j = −1 0 + 1.0000i

Realmin El número real positivo más pequeño que es utilizable

2.2251e-308

realmax El número real positivo más grande que es utilizable

1.7977e+308

Page 11: Clase 7

ALGUNAS OPERACIONES MÁSFUNCIÓN ¿QUÉ HACE?

abs (x) valor absoluto o magnitud de un número complejosign (x) signo del argumento si x es un valor real

(-1 si es negativo, 0 si es cero, 1 si es positivo)exp (x) exponencial

gcd (m,n)

Máximo común divisor

lcm (m,n)

Minimo común múltiplo

log (x) logaritmo neperiano o naturallog2 (x) logaritmo en base 2log10

(x)logaritmo decimal

mod(x,y)

módulo después de la división

rem (x,y)

módulo después de la división

sqrt (x) raíz cuadradanthroot

(x,n)raíz n-ésima de x

Page 12: Clase 7

Sentencias condicionalesswitch

if...else

Page 13: Clase 7

Por ejemplo:

Page 14: Clase 7

% Este código es del D.F anteriorX = input('Ingrese un número al asar:'); Y = input('Ingrese un otro número al asar:'); if (X == Y)%para igualacion es == ya que un = es asignacion disp ('Acertastes don numeros iguales') else % este es el sino del ifdisp ('No Acertaste') end %aqui terminamos el if

Page 15: Clase 7

%Programa para determinar si un numero es par:a=input('ingrese el valor a evaluar')b=rem(a,2);if b~=0 %b es diferente a 0 disp ('Elnumero introducido no es par')else disp ('El numero introducido es par')end

%Programa para determinar el menor de dos numerosa=input('Ingrese el primer número');b=input('Ingrese el segundo número');if (a>b) disp ('el numero menor es:') disp(b)else disp ('El numero menor es:') disp (a)end

Page 16: Clase 7

fprintf(' Calculadora con switch \n ')a = input('ingrese el primer valor a operar')b = input('ingrese el segundo valor a operar')sig = input('que quieres hacer + suma - resta * multiplicacion / division ','s') switch(sig) case '+' d = a + bfprintf(' los valores se sumaron son a %i el valor de b %i la suma es: %i\n',a,b,d) case '-' d = a - b fprintf(' los valores se restaron son a %i el valor de b %i la resta es: %i\n',a,b,d) case '*' d = a * bfprintf(' los valores se multiplicaron son a %i el valor de b %i la multiplicacion es: %i\n',a,b,d) case '/' d = a / b fprintf(' los valores se dividieron son a %i el valor de b %i la division es: %i\n',a,b,d) otherwise fprintf(' No ingreso nada para operar ')end

Page 17: Clase 7

fprintf(' MENU ')fprintf('los meses solo ingresa las primeras tres letras');nMes=input('Introduce el nombre del mes): ','s');mes=lower(nMes(1:3)); %utiliza las tres primeras letras del mesif mes=='feb' %utilizar strcmp(mes,'feb') para comparar strings bisiesto=input('¿Es año bisiesto s para si?:','s'); bi=lower(bisiesto(1)); %utiliza la primera letraendswitch (mes) case{'sep','abr','jun','nov'} dias=30 case 'feb' if bi=='s' dias=29 else dias=28 end otherwise dias=31end

Page 18: Clase 7

Cree los siguientes códigos con if y switch1.Donde ingrese la edad de la persona y compare diga cuando

es mayor de edad y diga de que país es ejemplo1.Edad 18 es mayor de edad en Guatemala2.Edad 21 es mayor de edad en EEUU3.… y mas lugares

2.Que ingrese un numero y diga si es neutro, positivo o negativo.

3.Calcular un programa donde debe calcular el doble, triple, cuádruple de un numero, el usuario debe decidir que quiere realizar.