Pensamiento_Algoritmico

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/