%% prog001 mi primer programa variables y asignaciones % el signo porcentaje "%" indica comentario es decir una linea o conjunto % de lineas que no es interpretado por el MATLAB % los signos "%%" indica cambio de seccion clear all; %limpia todas las variables del workspace clearvars; %limpia todas las variables del workspace %este es mas moderno y eficiente close all; %cierra todas las ventanas adicionales que se hayan abierto clc; %limpia el command window %% tipos de variables y operador asignacion "=" n = 1; %variable entera x = 0.88; %variable de punto flotante a = 'hola mundo'; %variable de cadena de caracteres se usa comilla simple l = false; %variable logica true = verdadero - false = falso %el operador asignacion "=" representa el depositar un valor u otro objeto %en un espacio de memoria reservado por el nombre de la variable es un %operador que trabaja solamente en el sentido indicado por la flecha <-- %es decir que z = x + y esta bien pero x + y = z esta mal %podemos hacer asignaciones de forma directa o mediante operaciones x1 = x + n; %se pueden generar nuevas variables mediante operaciones x2 = 54.7; %tambien podemos generar variables por asignacion directa ver = true; %% operadores aritmeticos x = 1; y = 2; z = 3; %los operadores aritmčticos por oreden de precedencia y1 = z^2; %1er exponenciacion y2 = z/2; %2do division y3 = x*y; %3er multiplicacion y4 = z-y; %4to resta y5 = x+y; %5to suma %sin parentesis el orden de operaciones estā dado por la precedencia y6 = x^3/y + 2*z - 5 + x; %los parentesis cambian el orden de precedencia y7 = x^3/(y + 2*z) - 5 + x; %% funciones matematicas x = 0.5; %antes x = 1, pero la cambiamos x = 0.5 n = 3; %una variable cambia su valor en el programa cuando se %ejecutan instrucciones de signacion sobre ella x01 = sqrt(x); %raiz cuadrada x02 = x^(1/n); %raiz enesima x03 = log(x); %logaritmo base natural o base e x04 = exp(x); %funcion exponencial x05 = log10(x); %logaritmo base 10 x06 = 10^x; %exponencial base 10 x07 = sin(x); %seno x08 = cos(x); %coseno x09 = tan(x); %tangente x10 = asin(x); %arco seno - podemos incorporar otras operaciones x11 = acos(x); %arco coseno - podemos incorporar otras operaciones x12 = atan(x); %arco tangente %se pueden generar expresiones mās complejas x13 = log10( log(x+y)^2 * sin(10^(x+z)^4) ); %el matlab puede dar resultados para funciones diversas aun cuando %no exista resultado en los numeros reales, se debe tener cuidado en la %interpretacion de ese resultado x14 = log(-2); %el resultado es complejo cuidado si %se usa para otra cosa %% asignaciones usando variables logicas y operadores relacionales+ a = true; %asignaciones logicas directas b = false; %asignaciones logicas directas %operaciones relacionales con resultados logicos c1 = 4 > 1; %asignacion logica usando operador relacional "mayor que" c2 = x01 >= x02; %lo mismo usando usando operador relacional "mayor igual que" c3 = x09 == x10; %lo mismo usando usando operador relacional "igual que" c4 = x08 ~= x07; %lo mismo usando usando operador relacional "distinto que" c5 = x02 <= x03; %lo mismo usando usando operador relacional "menor igual que" c6 = x01 < x10; %lo mismo usando usando operador relacional "menor que" %operadores logicos A = a && b; %operador logico "y" B = a || b; %operador logico "o" C = ~a; %operador logico "no" %recordar que variable con mayusculas son distintas de minusculas Z = ~((A && B) || b) && (C || a && A);