Está en la página 1de 30

Ejercicio de algoritmo

Repetir-hasta

Un teatro otorga descuentos segn la edad del cliente. Determinar la cantidad de dinero que el teatro deja de percibir por cada una de las categoras. Tomar en cuenta que los nios menores de 5 aos no pueden entrar al teatro y que existe un precio nico en los asientos. Los descuentos se hacen tomando en cuenta el siguiente cuadro, Ud define la muestra Categora 1 2 3 4 Edad 5-14 15-19 20-45 46-65 Descuento 35% 25% 10% 25%

Repetitivos compuestos

Tarea
Suponga que tiene Ud una tienda y desea registrar las ventas en una computadora. Disee un algoritmo en pseudocdigo que lea por cada cliente: 1.el monto de la venta 2.calcule e imprima el IVA 3.calcule e imprima en total a pagar 4.lea la cantidad con la que paga el cliente 5.calcule e imprima el cambio 6.imprima un cierre diario con el dinero que debe haber en la caja por da

Introduccin al lenguaje

Matlab es un lenguaje de programacin de alto nivel, que integra la computacin, la visualizacin y la programacin en un ambiente muy fcil de usar. En donde los problemas y las soluciones son expresados en una notacin matemtica muy familiar. Matlab tiene muy poderosa aplicacin en los siguientes campos:
Matemticas, estadstica y computacin Desarrollo de algoritmos Modelado, simulacin y diseo de prototipos Grficas cientficas y de Ingeniera Desarrollo de aplicaciones, incluyendo la construccin de la interfaz grfica con el usuario.

MATLAB, proviene de la simplificacin de Matrix laboratory, debido a que originalmente fue diseado para proveer acceso fcil al trabajo con matrices Desde hace algunos aos Matlab se ha convertido en la herramienta mas utilizada en el ambiente universitario en cursos introductorios y avanzados de Matemticas e Ingeniera. En la industria Matlab es una herramienta muy til en cuanto a anlisis, Desarrollo e investigacin de la productividad Matlab est constituido por una familia de aplicaciones especficas llamadas toolboxes. De acuerdo con el campo en el cual el usuario

Sistema Matlab
El lenguaje de programacin: Es un lenguaje de arreglos matriciales de alto nivel, con control de flujo de sentencias, funciones, estructuras de datos, entradas/salidas, y especiales caractersticas de programacin orientada a objetos Ambiente de trabajo: Este es el kit de herramientas que uno puede tener disponible como usuario o programador de Matlab. Incluye facilidades para manejo de variables en el ambiente de trabajo y exportacin e importacin de datos

Librera de funciones matemticas: Esta es una robusta coleccin de algoritmos computacionales, que rene desde funciones elementales como suma, seno, coseno y aritmtica compleja, hasta funciones mas sofisticadas como inversas de matrices, funciones de Bessel y transformadas rpidas de Fourier Interfaz con programas: Esta es una librera que permite escribir programas en C y Fortran que interactan con Matlab. Incluye facilidades para llamar rutinas desde Matlab (enlace dinmico)

SIMULINK
Este es uno de los programas que acompaa a Matlab, es un sistema interactivo para simulacin de sistemas dinmicos no lineales. Este programa controlado con el mouse nos permite modelar un sistema dibujando diagramas de bloques en la pantalla Cuando dibujamos un bloque en la pantalla, Simulink genera un programa en C

Mandatos bsicos Variables Funciones Complejos Vectores Matrices Polinomios Grficas Programacin

Mandatos bsicos
help, help tema, help win dir diary fichero (formato de texto) Comentarios: % Edicin de lneas de comando Cortar y Pegar

Variables
Asignar a = 3, b = 4 Listar ans who whos Eliminar clear b Guardar save fichero Recuperar load fichero

Constantes y cadenas
pi Formatos numricos format long Unidad imaginaria: format short i,j format rat Precisin: Cadenas de caracteres eps 'Esto es una cadena Nmero : Infinito: Inf Esto no Indeterminacin:

Funciones
help elfun
x x x x

(x3+1)/x 8 6 4 2 0 -2 -4 -6 -2 0 x 2

sin cos tan exp

ezplot (x3+1)/x

Nmeros Complejos
Forma binmica z = 3 + 4i Parte real imaginaria real(z) imag(z) Complejo conjugado conj(z) e Mdulo argumento abs(z) angle(z) Representacin grfica plot(z,'*') compass(z) y

Vectores
Edicin u = [1 2 3] v = [1,2,3] w = [1;2;3] w =[1 2 3] Progresivos 0:0.1:10 linspace(0,1,11) Normas norm(v,2) norm(v,1) norm(v,inf) 1
0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 -1 -0.6 -0.2 0.2 0.6 1

Operaciones con vectores


Suma:
de comps.:

u+v sum(u) 2*u dot(u,v) u.*v u*w, w*u prod(u)

Transpuesta: u' Voltear fliplr(x) flipud(x') Funciones x = -1:0.01:1 y = tanh(x) plot(x,y)

Productos
por escalar: escalar: elemental: matricial: de comps.:

Matrices
Edicin A = [1,2;3,4] B=[-1-2-3-4] Elemento: A(2,1) Fila: Columna: A(2,:) Bloques M = [A,B;B,A] Submatrices M41= M(1:3,2:4) fil = [1,2,4] col = [1,3,4] M32= M(fil,col)

Operaciones con matrices


Suma y resta: Producto: Potencia: Cociente izq.: / ./ * ^ .* .^ + Determinan te
det(A)

Inversa inv(A) Rango

Matrices usuales
Identidad de orden n: eye(n)

Nula de tamao mn: zeros(m,n) Matriz de unos: Matriz aleatoria: ones(m,n) rand(m,n)

Matriz de Hilbert: hilb(n) Matriz de van der Monde: vander(x)

Polinomios
p( x ) = 2 x 3 5x 2 + 34 x 7 3 3
Coeficientes Valor de p en x: Races: Multiplicacin: Divisin con deconv(p,d) p=[2/3 -5 34/3 -7] polyval(p,x) roots(p) conv(p,q) resto: [q,r] =

Formato grfico
Estilo de lnea
Trazo: , o, x, +, , *, :, , Color: r, g, b, y, m, c, w, k

Ttulos
title, xlabel, ylabel text, gtext

8 6 4 2 0 -2 -4 -6 -8 0 1 2 3 4 5

Mximo Mnimo

Curvas planas
Cartesianas
ezplot fplot plot
150 90 120 0.5 0.25 180 0 1 0.75 30 60

Polares
polar

Paramtricas
plot

210 240 270 300

330

Funciones de dos variables


Crear la malla de puntos en el plano XY
x =-1:0.1:1; y =x; [X,Y] = meshgrid(x,y);

Evaluar la funcin sobre X, Y


z = X .* Y;

Representar z respecto a X e Y
surf(x,y,z)

Opciones grficas 3D
Malla transparente
mesh(x,y,z), hidden off

Superficie color degradado sin malla


surf(x,y,z), shading interp

Mapa fsico
pcolor(x,y,z),hold on contour(x,y,z,'k') % k es negro

Curvas en 3D y superficies
Curvas en 3D
t = 0:pi/500:4*pi; x = sin(t); y = cos(t); z = t; plot3(x,y,z)% Hlice

Superficies de revolucin
cylinder(x);

Esfera
sphere

Programacin
Lenguaje de programacin ms limitado que C IF If condicion; sentencias; end If condicion 1; bloque 1;elseif
condicion 2; bloque 2; else bloque 3; end

Switch (anloga if...elseif) Switch switch


bloque end n;

un

conjunto

expresion;case, otherwise bloque n+1,

For For For i=1:m

For j=1:n Sentencias end end

While while condicin; sentencias; end

Break Try... Catch... End (gestin de errores) try sentencia1; catch sentecia 2;
end

Input n = input (teclee un nmero) Disp


disp (el programa ha terminado)

Ficheros *.m
Son ficheros de texto (ASCII) que constituyen el centro de la programacin en Matlab Existen 2 tipos, de comando y de funciones Fichero de comando contiene una sucesin de comandos que se ejecutan al teclear su nombre, puede llamar a otros ficheros de comando Fichero de funciones permite definir funciones anlogas a las de Matlab, con su nombre, sus argumentos y sus