Upload
miguel-f-salamanca
View
214
Download
0
Embed Size (px)
Citation preview
7/25/2019 Pensamiento_Algoritmico
1/30
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 1 / 30
Pensamiento algortmicoUniversidad Nacional de Colombia
Jesus Ramrez-Pastran
February 2, 2016
7/25/2019 Pensamiento_Algoritmico
2/30
Indice1 Algoritmos
Que es un algoritmo?Caractersticas de un algoritmoEjemplos de algoritmos en la vida cotidianaComo se escribe un algoritmo?Ejercicios propuestos
2 Introduccion a la programacion computacional
Que es programacion computacional?Lenguaje de programacionTipos de lenguaje de programacionTipos de variables en programacionSentencias comunmente utilizadas en programacion
computacionalSentencias tipo bucle o cicloActividades propuestas
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 2 / 30
7/25/2019 Pensamiento_Algoritmico
3/30
Proxima sub seccion1 Algoritmos
Que es un algoritmo?Caractersticas de un algoritmoEjemplos de algoritmos en la vida cotidianaComo se escribe un algoritmo?Ejercicios propuestos
2 Introduccion a la programacion computacional
Que es programacion computacional?Lenguaje de programacionTipos de lenguaje de programacionTipos de variables en programacionSentencias comunmente utilizadas en programacion
computacionalSentencias tipo bucle o cicloActividades propuestas
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 3 / 30
http://find/7/25/2019 Pensamiento_Algoritmico
4/30
Que es un algoritmo?
Se denomina algoritmo a una lista de operaciones ordenadas de formalogica, tal que permiten encontrar la solucion a un problemaplanteado. En ingeniera es comun utilizar algortimos de solucion pararesolver problemas de matematica, informatica y disciplinas afines.
La palabra algoritmo proviene de Al-Khwarizmi, sobrenombre delmatematico arabe del siglo IX, Mohamed ben Musa, quien alcanzogran reputacion al enunciar paso a paso las reglas para sumar, restar,multiplicar y dividir numeros con decimales.
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 4 / 30
http://find/7/25/2019 Pensamiento_Algoritmico
5/30
Proxima sub seccion1 Algoritmos
Que es un algoritmo?Caractersticas de un algoritmoEjemplos de algoritmos en la vida cotidianaComo se escribe un algoritmo?Ejercicios propuestos
2 Introduccion a la programacion computacional
Que es programacion computacional?Lenguaje de programacionTipos de lenguaje de programacionTipos de variables en programacionSentencias comunmente utilizadas en programacion
computacionalSentencias tipo bucle o cicloActividades propuestas
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 5 / 30
http://find/7/25/2019 Pensamiento_Algoritmico
6/30
Caractersticas de un algoritmo
Se debe indicar claramente el orden de realizacion de cada paso. Debe arrojar un resultado determinstico, es decir, si se ejecuta
varias veces partiendo de las mismas condiciones iniciales se debeobtener siempre el mismo resultado.
Debe tener un inicio y un fin claramente definido con un numerode pasos definidos.
Dede el punto de vista de programacion computacional, debepoder ejecutarse sin importar el lenguaje de programacion que seemplee para implementarlo.
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 6 / 30
http://find/7/25/2019 Pensamiento_Algoritmico
7/30
Proxima sub seccion1 Algoritmos
Que es un algoritmo?Caractersticas de un algoritmoEjemplos de algoritmos en la vida cotidianaComo se escribe un algoritmo?Ejercicios propuestos
2 Introduccion a la programacion computacional
Que es programacion computacional?Lenguaje de programacionTipos de lenguaje de programacionTipos de variables en programacionSentencias comunmente utilizadas en programacion
computacionalSentencias tipo bucle o cicloActividades propuestas
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 7 / 30
http://goforward/http://find/http://goback/7/25/2019 Pensamiento_Algoritmico
8/30
Ejemplos de algoritmos en la vida cotidiana
Algoritmo para lavarse las manos INICIO
Abrir el grifo de agua. Mojarse las manos. Aplicarse jabon.
Enjuagarse las manos. Cerrar el grifo de agua. Secarse la manos con papel. Exponer las manos a corriente de aire caliente.
FIN
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 8 / 30
http://find/7/25/2019 Pensamiento_Algoritmico
9/30
Proxima sub seccion1 Algoritmos
Que es un algoritmo?Caractersticas de un algoritmoEjemplos de algoritmos en la vida cotidianaComo se escribe un algoritmo?Ejercicios propuestos
2 Introduccion a la programacion computacional
Que es programacion computacional?Lenguaje de programacionTipos de lenguaje de programacionTipos de variables en programacionSentencias comunmente utilizadas en programacion
computacionalSentencias tipo bucle o cicloActividades propuestas
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 9 / 30
http://goforward/http://find/http://goback/7/25/2019 Pensamiento_Algoritmico
10/30
Como se escribe un algoritmo?Para escribir un algoritmo no hace falta utilizar un lenguaje deprogramacion especfico. Solo basta con tener en cuenta que el
algoritmo cumpla con las caractersticas que se mencionaronanteriormente. La estructura que se puede utilizar para escribir elalgoritmo cambia de persona en persona. Entre las estructuras deescritura se tienen:
Descripcion textual: Se escriben los pasos en forma narrativa con
palabras propias de quien lo escribe. Lista de operaciones: es similar a la descripcion textual, pero
enumerando los pasos y utilizando variables. Diagramas de Flujo: son la representacion grafica del algoritmo o
proceso, en la que se utilizan cajas, rombos, flechas y otros
smbolos para indicar los pasos del algoritmo. Pseudocodigo: se utilizan palabras clave para identificar las
estructuras del algoritmo, tales como toma de decisiones,actividades que se repiten, etc.
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 10 / 30
http://find/7/25/2019 Pensamiento_Algoritmico
11/30
Como se escribe un algoritmo?Algoritmo para realizar el conteo de numeros del 1 al 100
Figure: Figura tomada de http://sistemasunu.blogspot.com.co
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 11 / 30
http://find/7/25/2019 Pensamiento_Algoritmico
12/30
Como se escribe un algoritmo?Algoritmo que permite pedir un numero al usuario y mostrar elnombre del da al que corresponde (1=lunes).
1 ALGORITMO DIA PARA;2 VAR3 ENTERO contador;4 INICIO5 PARA contador DESDE 1 HASTA 76 EN CASO DE contador HACER
1: ESCRIBIR(Lunes);2: ESCRIBIR(Martes);3: ESCRIBIR(Mircoles);4: ESCRIBIR(Jueves);5: ESCRIBIR(Viernes);6: ESCRIBIR(Sbado);
7: ESCRIBIR(Domingo);7 FIN CASO8 FIN PARA
9 FIN
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 12 / 30
http://find/http://goback/7/25/2019 Pensamiento_Algoritmico
13/30
Proxima sub seccion1 Algoritmos
Que es un algoritmo?Caractersticas de un algoritmoEjemplos de algoritmos en la vida cotidianaComo se escribe un algoritmo?Ejercicios propuestos
2 Introduccion a la programacion computacional
Que es programacion computacional?Lenguaje de programacionTipos de lenguaje de programacionTipos de variables en programacionSentencias comunmente utilizadas en programacion
computacionalSentencias tipo bucle o cicloActividades propuestas
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 13 / 30
http://find/7/25/2019 Pensamiento_Algoritmico
14/30
Ejercicios propuestos
Escriba en forma de pseudocodigo un algoritmo para resolver losiguientes problemas:
Crear un pseudocodigo que proporcione el volumen de uncilindro, conocidos su altura y diametro.
Crear un pseudocodigo que proporcione el precio medio de unproducto, calculado a partir del precio del mismo en tresestablecimientos distintos.
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 14 / 30
http://find/http://goback/7/25/2019 Pensamiento_Algoritmico
15/30
Proxima sub seccion1 Algoritmos
Que es un algoritmo?Caractersticas de un algoritmoEjemplos de algoritmos en la vida cotidianaComo se escribe un algoritmo?Ejercicios propuestos
2 Introduccion a la programacion computacional
Que es programacion computacional?Lenguaje de programacionTipos de lenguaje de programacionTipos de variables en programacionSentencias comunmente utilizadas en programacion
computacionalSentencias tipo bucle o cicloActividades propuestas
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 15 / 30
http://find/7/25/2019 Pensamiento_Algoritmico
16/30
Que es programacion computacional?
Se llama Programacion a la implementacion de un algoritmo en un
determinado lenguaje de programacion para resolver un problemamediante la ejecucion de un programa. Un Programa (Software eningles) corresponde a una secuencia de instrucciones que unacomputadora puede interpretar y ejecutar.
Existen diferentes tecnicas de programacion cuyo objetivo es mejorartanto el proceso de creacion de software como su mantenimiento.Entre ellas se pueden mencionar: programacion lineal, estructurada,
modular y orientada a objetos.
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 16 / 30
http://find/7/25/2019 Pensamiento_Algoritmico
17/30
Proxima sub seccion1 Algoritmos
Que es un algoritmo?Caractersticas de un algoritmoEjemplos de algoritmos en la vida cotidianaComo se escribe un algoritmo?Ejercicios propuestos
2 Introduccion a la programacion computacional
Que es programacion computacional?Lenguaje de programacionTipos de lenguaje de programacionTipos de variables en programacionSentencias comunmente utilizadas en programacion
computacionalSentencias tipo bucle o cicloActividades propuestas
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 17 / 30
Q ?
http://find/http://goback/7/25/2019 Pensamiento_Algoritmico
18/30
Que es un lenguaje de programacion?
Es el lenguaje utilizado para dar instrucciones de comportamiento a
una maquina, particularmente una computadora. Se define como unconjunto de smbolos y reglas sintacticas y semanticas que juntos danuna estructura de ejecucion a las operaciones que se requiere quehaga la maquina.Existen diversos lenguajes de programacion, los cuales estan escritos
para ser comprensibles por el ser humano (a estos lenguaje se lesllama cdigo fuente), sin embargo, dicho lenguaje no es comprendidopor la maquina ya que esta solo maneja el lenguaje binario.Para que la maquina pueda entender el lenguaje de programacion esnecesario traducirlo a lenguaje binario, esto se hace mediante unproceso llamado compilacion.
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 18 / 30
P i b i
http://find/http://goback/7/25/2019 Pensamiento_Algoritmico
19/30
Proxima sub seccion1 Algoritmos
Que es un algoritmo?Caractersticas de un algoritmo
Ejemplos de algoritmos en la vida cotidianaComo se escribe un algoritmo?Ejercicios propuestos
2 Introduccion a la programacion computacional
Que es programacion computacional?Lenguaje de programacionTipos de lenguaje de programacionTipos de variables en programacionSentencias comunmente utilizadas en programacion
computacionalSentencias tipo bucle o cicloActividades propuestas
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 19 / 30
Ti d l j d i
http://find/http://goback/7/25/2019 Pensamiento_Algoritmico
20/30
Tipos de lenguajes de programacion
Por su nivel (Capacidad para expresar el algoritmo de unamanera adecuada a la comprension humana)
De alto nivel: C+ +, Python, Java, FORTRAN, MATLAB, etc. De bajo nivel: assembler
Por la forma como se ejecutan Compilados: C+ +, FORTRAN. Interpretados:MATLAB, Python.
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 20 / 30
P i b i
http://find/7/25/2019 Pensamiento_Algoritmico
21/30
Proxima sub seccion1 Algoritmos
Que es un algoritmo?Caractersticas de un algoritmo
Ejemplos de algoritmos en la vida cotidianaComo se escribe un algoritmo?Ejercicios propuestos
2 Introduccion a la programacion computacional
Que es programacion computacional?Lenguaje de programacionTipos de lenguaje de programacionTipos de variables en programacionSentencias comunmente utilizadas en programacion
computacionalSentencias tipo bucle o cicloActividades propuestas
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 21 / 30
Ti d i bl i
http://find/7/25/2019 Pensamiento_Algoritmico
22/30
Tipos de variables en programacionCuando se realiza un programa computacional, es necesario definir yasignar valores a diferentes variables, las cuales permitiran alprogramador definir las diferentes sentencias y operaciones querequiera que el programa ejecute. Entre las variables mas comunesque se utilizan en programacion computacional se tienen:
Variables Booleanas: Son variables logicas que almacenan valoresde verdadero (1) o falso (0).
Variables enteras: Almacenan valores numericos tipo entero. Variables de punto flotante reales: Almacenan valores numericos
no enteros y pertenenciente a los reales. Variables tipo compleja: Almacenan valores numericos tipo
complejo. Variables tipo caracter: Almacenan letras. Variables tipo cadena de caracteres: Como su nombre lo indica
almacenan cadenas de caracteres (palabras).
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 22 / 30
P i b e i
http://find/7/25/2019 Pensamiento_Algoritmico
23/30
Proxima sub seccion1 Algoritmos
Que es un algoritmo?Caractersticas de un algoritmo
Ejemplos de algoritmos en la vida cotidianaComo se escribe un algoritmo?Ejercicios propuestos
2 Introduccion a la programacion computacional
Que es programacion computacional?Lenguaje de programacionTipos de lenguaje de programacionTipos de variables en programacionSentencias comunmente utilizadas en programacion
computacionalSentencias tipo bucle o cicloActividades propuestas
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 23 / 30
Sentencias condicionales
http://goforward/http://find/http://goback/7/25/2019 Pensamiento_Algoritmico
24/30
Sentencias condicionales
Sentencia if: Se usa para realizar alguna operacion dentro del
algoritmo siempre y cuando se cumpla alguna condicionpreestablecida por el programador. Su estructura basica es lasiguiente,
if Condicon requerida por el programador se cumple then
Realice alguna operacionend ifDe la estructura anterior se observa que si la condicion esverdadera, la sentencia se ejecuta, de otro modo, se salta dichasentencia, continuando la ejecucion del programa con otras
sentencias a continuacion de esta.
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 24 / 30
Sentencias condicionales
http://find/7/25/2019 Pensamiento_Algoritmico
25/30
Sentencias condicionales
Otra forma de manejar esta sentencia es,if Condicon requerida por el programador se cumple then
Realice operacion 1else
Realice operacion 2
end ifLas dos primeras lneas indican que si la condicion es verdadera seejecuta la operacion 1. La palabra clave else, significa que si lacondicion no es verdadera se ejecuta la operacion 2.
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 25 / 30
Proxima sub seccion
http://goforward/http://find/http://goback/7/25/2019 Pensamiento_Algoritmico
26/30
Proxima sub seccion1 Algoritmos
Que es un algoritmo?Caractersticas de un algoritmo
Ejemplos de algoritmos en la vida cotidianaComo se escribe un algoritmo?Ejercicios propuestos
2 Introduccion a la programacion computacional
Que es programacion computacional?Lenguaje de programacionTipos de lenguaje de programacionTipos de variables en programacionSentencias comunmente utilizadas en programacion
computacionalSentencias tipo bucle o cicloActividades propuestas
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 26 / 30
Sentencias tipo bucle o ciclo
http://goforward/http://find/http://goback/7/25/2019 Pensamiento_Algoritmico
27/30
Sentencias tipo bucle o ciclo
Es una sentencia que se utiliza para realizar repetidas veces unamisma operacion. Su sentencia basica es,
Haga desde i=1 hasta i=20Sumai =i+ 4
final
En la estructura anterior se realiza una misma operacion (En este casoes una suma) veinte veces. Si se analiza con detenimiento, los valoresque se calcularan para la suma en cada iteracion seran: 5, 6, 7, 8, ...etc.
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 27 / 30
Proxima sub seccion
http://find/7/25/2019 Pensamiento_Algoritmico
28/30
Proxima sub seccion1 Algoritmos
Que es un algoritmo?Caractersticas de un algoritmo
Ejemplos de algoritmos en la vida cotidianaComo se escribe un algoritmo?Ejercicios propuestos
2 Introduccion a la programacion computacional
Que es programacion computacional?Lenguaje de programacionTipos de lenguaje de programacionTipos de variables en programacionSentencias comunmente utilizadas en programacion
computacionalSentencias tipo bucle o cicloActividades propuestas
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 28 / 30
Actividades propuestas
http://find/7/25/2019 Pensamiento_Algoritmico
29/30
Actividades propuestas
Construya el procedimiento en forma de algoritmo para realizar
las siguientes actividades: Una persona se encuentra en su casa tomando una siesta (1:00
p.m) y debe ir a su trabajo (2:00 p.m). Explique claramente ypaso a paso (Sea bastante detallista en cada uno de los pasos arealizar) qu debe hacer la persona para llegar a su trabajo atiempo?
Desarrollar una secuencia de programacion que se utilice en unaoficina de venta de boletas para un concierto, que sea capaz dealmacenar la cantidad de boletas vendidas y de avisar al vendedorque se ha agotado la boletera (EL establecimiento tiene unacapacidad maxima de 200 personas). Existen boletas tipo
Premium y general.
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 29 / 30
Nota importante
http://find/http://goback/7/25/2019 Pensamiento_Algoritmico
30/30
Nota importante
Esta presentacion aun se encuentra en fase de desarrollo. Se agradececualquier error que encuentren, por favor notificarlo.
No esta permitida la reproduccion ni publicacion de este material yaque el mismo es para uso exclusivo de la asignatura modelacionmatematica.
Jesus Ramrez-Pastran (Ingeniera) Modelacion matematica February 2, 2016 30 / 30
http://find/