You are on page 1of 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 5

Edad
5-14 15-19 20-45 46-65 66 y ms

Descuento
35% 25% 10% 25% 35%

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 va a implementar su aplicacin, selecciona la Toolbox necesaria.

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 Manejador de Grficos: Este incluye un elevado nivel de comandos para la visualizacin de datos en dos y tres dimensiones, procesamiento de imgenes, animaciones y presentacin de grficos

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

Guardar save fichero


Recuperar load fichero

Eliminar clear b

Constantes y cadenas
Nmero p: pi

Formatos numricos
format long format short eps

Unidad imaginaria: i,j Precisin: Infinito: Indeterminacin:

format rat
'Esto es una cadena Esto no

Inf Cadenas de caracteres NaN

Funciones
help elfun
u u u u

(x3+1)/x
8

sin cos tan exp

6
4 2

0
-2 -4

ezplot (x3+1)/x

-6
-2 0 x 2

Nmeros Complejos
Forma binmica z = 3 + 4i Mdulo y argumento abs(z)

Parte real e imaginaria


real(z) imag(z) Complejo conjugado conj(z)

angle(z)
Representacin grfica plot(z,'*') compass(z)

Vectores
Edicin u = [1 2 3] v = [1,2,3] w = [1;2;3] w =[1 2 3] 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

Progresivos 0:0.1:10 linspace(0,1,11)

Operaciones con vectores


Suma:
de comps.:

u+v sum(u) 2*u dot(u,v)

Transpuesta: u' Voltear fliplr(x) flipud(x') Funciones

Productos
por escalar: escalar:

elemental:
matricial: de comps.:

u.*v
u*w, w*u prod(u)

x = -1:0.01:1
y = tanh(x) plot(x,y)

Matrices
Edicin
A = [1,2;3,4]

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)

B=[-1-2-3-4]
Elemento: A(2,1)

Fila:

A(2,:)

Columna: A(:,1)

Operaciones con matrices


Suma y resta: + -

Determinante
det(A)

Producto: *
Potencia: ^

.*
.^

Inversa
inv(A)

Cociente izq.: /
Cociente der.: \

./
.\

Rango
rank(A)

Transpuesta: '

.'

Matrices usuales
Identidad de orden n:
Nula de tamao mn:

eye(n)
zeros(m,n)

Matriz de unos:

ones(m,n)

Matriz aleatoria: rand(m,n)

Matriz de Hilbert: hilb(n)


Matriz de van der Monde: vander(x)

Polinomios
p( x ) x 5x 34 x 7 3
2 3 3 2

Coeficientes

p=[2/3 -5 34/3 -7]

Valor de p en x:
Races: Multiplicacin:

polyval(p,x)
roots(p) conv(p,q)

Divisin con resto: [q,r] = deconv(p,d)

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

Mximo Mnimo

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

0.75

Polares
polar

180

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 un conjunto if...elseif) Switch switch expresion;case,


bloque end n; 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 valores de retorno (comienza siempre por function)

You might also like