Sie sind auf Seite 1von 42

Programación II

Dictado por:
MSC. ING. IVAN MONTALVO
FACULTAD DE INGENIERIA ELECTRICA
BIBLIOGRAFIA

• [1] Luis Joyanes Aguilar; Fundamentos de programación; Editorial


McGraw Hill, 5ta Edición; Madrid 2008
• [2] P. Deitel; H. Deitel; Cómo Programar en Java; Editorial Pearson, 9na
Edición; 2012
• [3] Holly Moore, Matlab for enineers; Pearson, 4th edition; 2015.

Programacion II - Ing. Iván Montalvo Msc.


LECTURAS SUGUERIDAS
• [1] F. Ceballos; Java 2: Curso De Programación; Alfaomega; México 2011
• [2] Robert Sedgewick; Algorithms; Editorial Addison Wesley; 2014
• [3] Thomas H. Cormen, Charles E. Leiserson, Ronald L Rivest, Clifford
Stein; Introduction to algorithms; MIT Press, 3th edition; 2009.
• [4] Stormy Attaway; Matlab: A Practical Introduction to Programming
and Problem Solving; Elsevier, Fourth Edition;2016

2
CONTENIDO – CAPITULO 1

Resultados de TOTAL DE
Unidades Contenidos de la Unidad Aprendizaje Indicadores HORAS
temáticas de la de logro POR
Asignatura UNIDAD

Programacion II - Ing. Iván Montalvo Msc.


1.1 Algoritmos.

1.2 Formas de expresar un


INTRODUCCION algoritmo (Matemática- Conoce los Identifica las
A LA Pseudocódigo). conceptos mejores
ALGORITMIA Y básicos del prácticas para 15h
PSEUDOCODIGO 1.3 Tipos de datos. lenguaje de el desarrollo
programación. algoritmos.
1.4 Constantes y Variables.

1.5 Declaraciones,
Expresiones, Sentencias.

3
CAPITULO I

Programacion II - Ing. Iván Montalvo Msc.


CONCEPTOS GENERALES Y
ALGORITMOS

4
1.1 Importancia de la algoritmia en
la ingeniería

Programacion II - Ing. Iván Montalvo Msc.


5
LENGUAJE DE PROGRAMACIÓN
MATLAB (abreviatura de MATrix LABoratory, "laboratorio de matrices") es una
herramienta de software matemático que ofrece un entorno de desarrollo
integrado (IDE) con un lenguaje de programación propio (lenguaje M). Está disponible
para las plataformas Unix, Windows, Mac OS X y GNU/Linux.

Programacion II - Ing. Iván Montalvo Msc.


6
MATLAB es un lenguaje de alto desempeño diseñado para realizar cálculos
técnicos. MATLAB integra el cálculo, la visualización y la programación en un
ambiente fácil de utilizar donde los problemas y las soluciones se expresan en una
notación matemática. MATLAB es un sistema interactivo cuyo elemento básico de
datos es el arreglo que no requiere de dimensionamiento previo. Esto permite
resolver muchos problemas computacionales, específicamente aquellos que
involucren vectores y matrices, en un tiempo mucho menor al requerido para
escribir un programa en un lenguaje escalar no interactivo tal como C o Fortran.
MATLAB se utiliza ampliamente en:

• Cálculos numéricos

Programacion II - Ing. Iván Montalvo Msc.


• Desarrollo de algoritmos

• Modelado, simulación y prueba de prototipos

• Análisis de datos, exploración y visualización

• Graficación de datos con fines científicos o de ingeniería

• Desarrollo de aplicaciones que requieran de una interfaz gráfica de usuario (GUI,


Graphical User Interface).

7
Que es programar?
Es el proceso de diseñar, codificar, depurar y
mantener el código fuente de programas
computacionales El código fuente es escrito en
un lenguaje de programación. El propósito de la
programación es crear programas que exhiban un
comportamiento deseado. El proceso de escribir
código requiere frecuentemente conocimientos en

Programacion II - Ing. Iván Montalvo Msc.


varias áreas distintas, además del dominio del
lenguaje a utilizar, algoritmos especializados y
lógica formal. Programar no involucra
necesariamente otras tareas tales como el análisis y
diseño de la aplicación (pero sí el diseño del código),
aunque sí suelen estar fusionadas en el desarrollo
de pequeñas aplicaciones.
Idear y ordenar las acciones necesarias para
realizar un proyecto.

8
Vamos a programar las vacaciones!
1. Elegir destino, personas (Viene o no la
suegra?)
2. Sacar billetes o revisar el coche o
alquilarlo,…

Programacion II - Ing. Iván Montalvo Msc.


3. Reservar el hotel, casa de campo,…
4. Hacer las maletas
… Todo esto es un cierto orden por las
consecuencias del resultado de unas
acciones respecto de las otras.

9
Vamos a programar las vacaciones, pero ahora
tenemos un mayordomo!

- El NO decide absolutamente nada


- El recibe ordenes precisas de tus deseos en
cierto lenguaje: castellano, chino, … o lenguaje

Programacion II - Ing. Iván Montalvo Msc.


de signos si fuse sordomudo
- Evidentemente hay que conocer el lenguaje para
sacar provecho del mayordomo o aprender su
lenguaje, o en su defecto contratar a un
mayordomo que entienda alguno de los
lenguajes que tu domines.

10
Este escenario es similar a la programación.
- El ordenador / computadora da unos servicios para el
tratamiento de la información (informática): consultar, calcular,
añadir, modificar o borrar información… (básicamente, nada
mas).
- Se parece a un moyordomo que recibe ordenes para realizar un
servicio (organizar vacaciones, limpieza, …)

Programacion II - Ing. Iván Montalvo Msc.


11
Este escenario es similar a la programación.
- Debes dar las ordenes precisas (que criterios para las búsquedas:
por nombre, que año, por productor, … añadir el nombre del
grupo musical, etc). Esto tiene que hacérselo en cierto lenguaje de
programación que tanto la persona que programa (jefe del
mayordomo) y el ordenador – computadora (mayordomo)
entiendan

Programacion II - Ing. Iván Montalvo Msc.


- Se parece a nosotros queriendo
disfrutar de algo (vacaciones, viaje, … )
sin llevan a cabo las tareas tediosas o
molestas (sacar billetes, hacer las
maletas, …).

12
Porque debo programar?

- Es conveniente y practico el
invertir tiempo y esfuerzo en
automatizar los tratamientos de
información ajustados a tus
necesidades.

Programacion II - Ing. Iván Montalvo Msc.


- Invertir tiempo y esfuerzo en
automatizar los tratamientos de
información ajustados a las
necesidades de otros que te
pueden pagar por tus servicios
profesionales
13
1.2 Introducción a los Algoritmos

Programacion II - Ing. Iván Montalvo Msc.


14
ALGORITMO
Conjunto ordenado y finito de operaciones que permite hallar la solución de un problema.
Es decir, es un conjunto de pasos o instrucciones con un orden y una terminación que
conducen a la solución de un problema determinado.

Consta de seis partes:

1. Inicio

Programacion II - Ing. Iván Montalvo Msc.


2. Declaración
3. Asignación

3.1 Asignación directa

3.2 Asignación por teclado

4. Proceso

5. Visualizar

6. Fin
15
ALGORITMOS SENCILLOS

Programacion II - Ing. Iván Montalvo Msc.


16
ALGORITMOS COMPLEJOS

Programacion II - Ing. Iván Montalvo Msc.


17
Algoritmo para beber agua

1. Saco un vaso de la repisa


2. Saco la botella de agua del

Programacion II - Ing. Iván Montalvo Msc.


la refrigeradora
3. Lleno el vaso con agua
4. Aproximo el vaso a mi
boca
5. Trago el liquido
18
Algoritmo para cambiar la llanta

1. Levantar el auto con la gata


hidráulica.
2. Soltar y sacar los pernos de

Programacion II - Ing. Iván Montalvo Msc.


la llanta.
3. Quitar la llanta.
4. Colocar llanta de repuesto.
5. Colocar y apretar los pernos.
6. Bajar y retirar la gata
hidráulica.
19
Porque son importantes los algoritmos?

“Porque los ordenadores NO son inteligentes”

Programacion II - Ing. Iván Montalvo Msc.


20
El Algoritmo es un paso previo
- Para escribir un programa,
antes debo pensar en el
algoritmo.

Programacion II - Ing. Iván Montalvo Msc.


- El programa es la
expresión de un algoritmo
en un lenguaje de
programación especifico
para ese programa.

21
Ejemplo de algoritmo
Realizar un algoritmo que calcule la multiplicación de dos números, el valor de
las calificaciones serán asignadas directamente.

1. Inicio algoritmo multiplicación de 2 4. Proceso


números.
Multiplicación = (Numero1 x Numero2)
2. Declaración

Programacion II - Ing. Iván Montalvo Msc.


Multiplicación => Numérico 5. Visualizar
Numero1 => Numérico Imprimir(“La multiplicación es: ” +
Numero2 => Numérico Multiplicación)
3. Asignación
6. Fin algoritmo multiplicación de dos números
3.1 Asignación directa
Numero1 = 20
Numero2 = 5

22
Ejemplo de algoritmo - Saludar
1. Inicio algoritmo Saludar 4. Proceso
2. Declaración Saludo = “Hola” + Nombre
Nombre => Variable
5. Visualizar

Programacion II - Ing. Iván Montalvo Msc.


Saludo => Variable
Imprimir(“Hola ” + Nombre)
3. Asignación 6. Fin algoritmo Saludar
Asignación por teclado
Nombre = “Hola como te
llamas”

23
Ejemplo de algoritmo
Realizar un algoritmo que calcule el promedio de dos calificaciones, el valor de
las calificaciones serán asignadas directamente.

1. Inicio algoritmo promedio de 2 4. Proceso


calificaciones
Promedio = (Nota1 + Nota2)/2
Declaración

Programacion II - Ing. Iván Montalvo Msc.


2.
5. Visualizar
Promedio => Numérico
Nota1 => Numérico Imprimir(“El promedio es: ”+Promedio)
Nota2 => Numérico
6. Fin algoritmo promedio de 2
calificaciones
3. Asignación
3.1 Asignación directa
Nota1 = 10
Nota2 = 6

24
Ejemplo de algoritmo
Calcular la hipotenusa de un triangulo rectángulo. Cuando B y C son los catetos
del triangulo y A es el valor deseado de la hipotenusa.

1. Inicio algoritmo hipotenusa de un 4. Proceso


triangulo rectangulo
A = raíz (B^2 + C^2)
Declaración

Programacion II - Ing. Iván Montalvo Msc.


2.
5. Visualizar
A => Variable, Real
B => Real Imprimir(“EL valor de la
C => Real hipotenusa es:” + A)

6. Fin algoritmo hipotenusa de un


3. Asignación triangulo rectángulo
3.1 Asignación teclado
B = Valor 1
C = Valor 2

25
Ejemplo de algoritmo
Calcular el área y volumen de un cono. Done V
representa el volumen, AL es el área lateral, AB es
el área de la base, AT es el área total y las variables
g, r y h son las que se representan en la figura.

Programacion II - Ing. Iván Montalvo Msc.


1. Inicio algoritmo área y volumen de 4. Proceso
un cono
AL = 2*pi*r*g AB = pi*r^2
2. Declaración
pi = 3.1416, constante AT = AL+AB V = (pi*r^2*h)/3
h, r, g, AL, AT, V => Real, variable
5. Visualizar
3. Asignación Imprimir(“EL área total es:” + AT)
3.1 Asignación teclado
h = altura Imprimir(“El volumen total es:” + V)
r = radio
Fin algoritmo área y volumen de un cono
26
6.
g = altura lateral
En verdad son mas o menos importantes
los algoritmos que los códigos?
EJEMPLO - COCINAR
Un ejemplo claro es la una
receta de un plato. No importa

Programacion II - Ing. Iván Montalvo Msc.


quien cocine, siempre y cuando
siga las instrucciones (receta)
todas las personas van a llegar
al mismo resultado. Lo mismo
pasa con los algoritmos y los
códigos, son igual de
importantes.

27
1. 3 Formas de expresar algoritmos
(Diagrama de Flujo - Pseudocódigo)

Programacion II - Ing. Iván Montalvo Msc.


1.4 Elaboración de Algoritmos

28
DIAGRAMA DE FLUJOS

• Los diagramas de flujo son esquemas


que representan gráficamente un
algoritmo por medio de los pasos de un

Programacion II - Ing. Iván Montalvo Msc.


proceso, que se realizan para entender
mejor al mismo y son utilizados en
programación, economía y procesos
industriales. Utilizan una series de
símbolos con significados especiales.

29
VENTAJAS DE UN DIAGRAMA DE FLUJOS

• Favorecen la comprensión del proceso al mostrarlo como un dibujo. El cerebro


humano reconoce muy fácilmente los dibujos.
• Permiten identificar los problemas y las oportunidades de mejora del proceso.
• Los diagramas de flujo describen que operaciones y en que secuencia se
requieren para solucionar un problema dado.
Los diagramas de flujo se dibujan generalmente antes de comenzar a programar

Programacion II - Ing. Iván Montalvo Msc.



el código frente a la computadora. Lo cual permite tener una idea mas clara de la
problemática antes de comenzar a programar.
• Estos diagramas de flujo desempeñan un papel vital en la programación de un
problema y facilitan la comprensión de problemas complicados y sobre
todo muy largos. Una vez que se dibuja el diagrama de flujo, llega a ser fácil
escribir el programa en cualquier idioma o lenguaje de alto nivel. Vemos a
menudo cómo los diagramas de flujo nos dan ventaja al momento de explicar el
programa a otros. Por lo tanto, está correcto decir que un diagrama de flujo es
una necesidad para la documentación mejor de un programa complejo.

30
ELEMENTOS DE UN DIAGRAMA DE FLUJO

Programacion II - Ing. Iván Montalvo Msc.


31
Ejemplo de diagrama de flujo

Programacion II - Ing. Iván Montalvo Msc.


32
Ejemplo de diagrama de flujo

Programacion II - Ing. Iván Montalvo Msc.


33
Programacion II - Ing. Iván Montalvo Msc.
34
Programacion II - Ing. Iván Montalvo Msc.
35
Programacion II - Ing. Iván Montalvo Msc.
36
Programacion II - Ing. Iván Montalvo Msc.
37
EL PSEUDOCODIGO

• El pseudocódigo es el lenguaje artificial e


informal que ayuda a los programadores a
desarrollar algoritmos. El pseudocódigo es
similar al inglés común; es conveniente
sencillo, aunque no es un lenguaje de
programación real.

Programacion II - Ing. Iván Montalvo Msc.


• Los programadores en pseudocódigo no se
ejecutan en las computadoras, sino que solo
ayudan al programador a “resolver” un
programa antes de intentarlo escribirlo en
un lenguaje de programación como C++,
Java, Matlab.

38
EL PSEUDOCODIGO

• El pseudocódigo solo consiste en caracteres, de manera que los


programadores pueden introducir los programas en pseudocódigos
a la computadora mediante un programa de edición. La
computadora puede desplegar o imprimir una copia reciente del
pseudocódigo cuando sea necesario. Un programa en pseudocódigo

Programacion II - Ing. Iván Montalvo Msc.


cuidadosamente preparado puede convertirse fácilmente en su
correspondiente en C++, Java, Matlab, entre otros. En muchos
casos esto se hace mediante un simple reemplazo de las
instrucciones en pseudocódigo pos sus equivalentes en Matlab.

39
EL PSEUDOCODIGO

• El pseudocódigo solo consiste en las instrucciones de acción; es decir,


aquellas que ejecutan cuando el programa se convirtió en pseudocódigo a
Matlab y se ejecute Matlab. Las declaraciones no son instrucciones
ejecutables. Son mensajes para el compilador. Por ejemplo, la definición
Input (i)

Programacion II - Ing. Iván Montalvo Msc.


Simplemente le indica al compilador el tipo de variable i, e instruye al
compilador para que reserve el espacio en memoria para la variable. Sin
embargo, esta definición no provoca la ejecución de acción alguna (tal como
una entrada, salida, o cálculo) cuando se ejecuta el programa. Algunos
programadores eligen mostrar cada variable y mencionar de manera breve
el propósito de cada una al principio del pseudocódigo del programa. De
nuevo, el pseudocódigo es una ayuda para el desarrollo de programas.

40
Ejemplo de pseudocódigo
Desarrolle un algoritmo que permita leer dos valores distintos, determinar cual de
los dos valores es el mayor y escribirlo.

Programacion II - Ing. Iván Montalvo Msc.


41
Ejemplo de pseudocódigo
• Desarrolle un algoritmo que permita leer tres valores y almacenarlos en las
variables A, B y C respectivamente. El algoritmo debe imprimir cual es el mayor
y cual es el menor. Recuerde constatar que los tres valores introducidos por el
teclado sean valores distintos. Presente un mensaje de alerta en caso de que se
detecte la introducción de valores iguales.

Programacion II - Ing. Iván Montalvo Msc.


42

Das könnte Ihnen auch gefallen