SlideShare une entreprise Scribd logo
1  sur  19
Introducción al
Pensamiento
algorítmico
Dr. Wilian Bravo
Escuela de Ciencias Químicas
ESPOCH
CONTENIDO
¿Qué es un algoritmo?
¿Qué es el pensamiento algorítmico?
¿Cómo se comunican los algoritmos?
¿Por qué son importantes los algoritmos?
¿Cuáles son las propiedades importantes de
algoritmos?
Un ejemplo - cómo crear un algoritmo
¿Qué es un algoritmo?
 Un algoritmo es un conjunto de instrucciones paso a paso precisas
para la solución de una tarea. Un algoritmo no resuelve una tarea;
ella le da una serie de pasos que, si se ejecuta correctamente, se
traducirá en una solución a una tarea. Utilizamos algoritmos cada
día, pero que a menudo no hacemos explícitamente pensando
acerca de los pasos individuales del algoritmo. Por ejemplo, a partir
de su coche, vestirse, iniciando sesión en su ordenador, o para
cocinar un plato de comida, están todos a cabo usando un
algoritmo, una serie paso a paso de las acciones.
 Para un algoritmo sea válida, cada paso (o instrucción) deben
ser:
 No ambiguo- la instrucción sólo puede ser interpretado de
una manera única
 Ejecutable - la persona o dispositivo de ejecutar la instrucción
deben saber cómo llevar a cabo la instrucción sin ninguna
información adicional.
 Ordenado - los pasos de un algoritmo deben ser ordenados
en una secuencia adecuada para llevar a cabo correctamente
la tarea.
EJEMPLO DE ALGORITMO…???
¿Qué es el pensamiento algorítmico?
 Pensamiento algorítmico es la capacidad de entender, ejecutar, evaluar y crear
algoritmos. Vamos a discutir cada una de estas ideas por separado.
 Ser un PENSADOR ALGORÍTMICO necesita la capacidad de comprender y ejecutar
algoritmos. Para algunas personas es fácil de seguir una serie de instrucciones
precisas, mientras que otras personas les resulta muy difícil. Algunas personas
parecen carecer de la paciencia y la diligencia necesaria para seguir un plan paso a
paso. Sin embargo, esta es una habilidad valiosa que todas las personas deben
dominar. Pensamiento algorítmico requiere paciencia debido a que cada instrucción
se debe ejecutar en su secuencia correcta sin saltar por delante o "pasando por alto"
algunos de la s instrucciones. Además, pensamiento algorítmico requiere diligencia y
perseverancia. A menudo es tedioso para seguir los pasos de un algoritmo complejo
y la gente a veces no logra completar un algoritmo porque, simplemente, "se dan por
vencidos."
 El Pensamiento algorítmico también requiere la capacidad de evaluar algoritmos. Esto
implica la determinación de si un algoritmo realmente resuelve una tarea dada.
 For example, a "preflight check list" is an algorithm for preparing an aircraft for take
off. Suppose you were given the job of determining if a new "preflight check list" for
the F35 (Joint Strike Fighter) is correct (checks all systems on the aircraft properly) and
complete (does not leave out any important checks). Hopefully you would agree that
this is an important job – pilot's lives are dependent on getting it right – and that
getting the check list correct and complete will not be easy. (As a side note, one way to
create the preflight check list is to determine the fault of each new aircraft crash and
add a new check to the list to prevent future crashes. But the cost in lives and money is
too great. We need to get the algorithm correct and complete before the first plane
takes to flight to prevent a single aircraft loss!)
 Y finalmente, el pensamiento algorítmico incluye la capacidad
de crear nuevos algoritmos. Este es probablemente el aspecto
más desafiante del pensamiento algorítmico. Dada una tarea,
se puede crear una serie de precisas, instrucciones paso a
paso que siempre resuelve la tarea correctamente?
Obviamente, la complejidad de la tarea tiene un gran impacto
en la complejidad de un algoritmo que cumplir con la tarea.
Las tareas simples puede típicamente llevarse a cabo con
algoritmos simples, mientras que las tareas complejas
requieren típicamente algoritmos más complejos.
¿Cómo se comunican los algoritmos?
 Cada paso (instrucción) de un algoritmo debe indicarse con precisión. Es muy difícil
de explicar algoritmos precisamente utilizando sólo el idioma Inglés. Por ejemplo,
por favor vuelva a leer el ejemplo algoritmo para la fabricación de "pastel cuadrado
de limón congelado " y luego responder a las siguientes preguntas:
 ¿La leche vienen en envases de diferentes tamaños? ¿Cuánta leche contiene 1
lata"?
 ¿Importa qué tipos de batidores se utiliza para batir a la leche?
 Es "cucharadita" una cucharadita o una cuchara de mesa?
 Muchos lenguajes de programación se han desarrollado a lo largo de los años y cada idioma
tiene sus propias características y beneficios especiales. Usted probablemente ha oído hablar de
algunos de estos lenguajes, como C, C ++, Pascal, Basic, Java, Perl, Python, y Ada. Se requiere
una cantidad significativa de tiempo para aprender un nuevo lenguaje de programación.
 Queremos principiantes para convertirse en mejores solucionadores de problemas al convertirse
en pensadores algorítmicos.
 Una de las formas más comunes para expresar algoritmos sin necesidad de utilizar un lenguaje
de programación que se llama diagramas de flujo . Los diagramas de flujo proporcionan una
descripción visual de un proceso paso a paso. El principal inconveniente de utilizar diagramas de
flujo es que son tedioso para dibujar y difícil de modificar si se dibujan mano en papel.
RAPTOR
 A computer program called
RAPTOR was developed by
Dr. Carlisle here at USAFA
which allows a person to
create an algorithm in
flowchart form and then
actually execute the
flowchart to test its validity.
Pretty cool! We will discuss
the details of how to use
RAPTOR in future lessons.
United States Air Force Academy
¿Cuáles son las propiedades importantes de
algoritmos?
 La siguiente es una lista de algunas de las propiedades importantes de los
algoritmos.
 Propiedad 1: Para una tarea no trivial dada (o conjunto de tareas relacionadas), hay
muchos algoritmos posibles para llevar a cabo la tarea.
 Esto confunde mucho a muchos estudiantes. "¿Quieres decir que hay más de una
respuesta correcta?" La respuesta es SÍ! Recuerde, un algoritmo no es la solución a
un problema; es un conjunto de instrucciones paso para encontrar una solución.
 Propiedad 2: Un algoritmo no codifica la teoría que subyace detrás de los pasos de
la INSTRUCCIÓN.
 Un algoritmo explica cómo realizar una tarea. Si el algoritmo es correcto, y usted
sigue las instrucciones exactamente, usted logrará la tarea. Pero es posible que no
entienda el porqué de algunos de los pasos.
 Propiedad 3: Algunos algoritmos son más eficientes que otros algoritmos.
 La ejecución de un algoritmo requiere una cierta cantidad de tiempo. Si se utiliza
un algoritmo menudo, su eficiencia se convierte en un problema. Es común para
crear múltiples algoritmos para llevar a cabo una tarea en particular y luego
seleccionar el algoritmo más rápido para incluir en un producto final. Uno de los
RETOS es de desarrollo de software es decidir cuánto tiempo y esfuerzo que usted
debe gastar en la búsqueda y desarrollo de más algoritmos eficientes.
 Propiedad 4: Programas de ordenador que se utilizan desde hace muchos años
por lo general deben ser modificadas con el tiempo para adaptarse a los cambios
en los requisitos de la tarea.
 Los programas de ordenador no son típicamente objetos estáticos. Ellos requieren
de "mantenimiento" para mantenerlos con cambios en los requisitos de la tarea.
Por ejemplo, un programa informático que calcula los impuestos de renta debe
cambiar todos los años a medida que cambian las leyes de impuesto sobre la
renta. Algunos estudios han demostrado que hasta un 75% de los costos de
desarrollo de software son consumidos por el mantenimiento de los programas
informáticos existentes.
 En conclusión, cuando desarrollamos nuevos algoritmos,
tratamos de crear una de las muchas posibles secuencias de
instrucciones que va a resolver nuestra tarea en cuestión.
Idealmente nos gustaría que el algoritmo se ejecute
rápidamente, que este bien "comentado" y que puede
mantener fácilmente en el tiempo.
Practica No 1. Creando Algoritmos básicos
 Crear un algoritmo utilizado el software RAPTOR, mismo que debe resolver un
problema básico utilizando ecuaciones.
 Crear ejemplos de la solución a la ecuación cuadrática
 Crear ejemplos de la media de elementos en un array.
 Enviar el archivo junto con el tutorial correspondiente.
Lección número 1
Escriba la clasificación de modelos(modelación)
¿Qué es un algoritmo?
Porque cree que es importante la modelación en
sistemas ambientales?
Proponga un algoritmo para una tarea sencilla,
puede ser incluso que no se requiera una ecuación
para resolverlo

Contenu connexe

Tendances

Mapa conceptual de algoritmos
Mapa conceptual de algoritmosMapa conceptual de algoritmos
Mapa conceptual de algoritmos
Fany Duque
 
DESARROLLO DE PROTOTIPOS
DESARROLLO DE PROTOTIPOSDESARROLLO DE PROTOTIPOS
DESARROLLO DE PROTOTIPOS
UDEC
 
P. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetosP. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetos
Geovanny Yungán
 
Tipos de atributos y tipos de relaciones
Tipos de atributos y tipos de relacionesTipos de atributos y tipos de relaciones
Tipos de atributos y tipos de relaciones
basilioj
 
EJERCICIOS DE ALGORITMOS
EJERCICIOS DE ALGORITMOSEJERCICIOS DE ALGORITMOS
EJERCICIOS DE ALGORITMOS
1002pc3
 
Lógica y Algoritmos 4. estructuras secuenciales y selectivas
Lógica y Algoritmos 4. estructuras secuenciales y selectivasLógica y Algoritmos 4. estructuras secuenciales y selectivas
Lógica y Algoritmos 4. estructuras secuenciales y selectivas
Edward Ropero
 
¿Como hacer un pseudocodigo y diagrama de flujo?
¿Como hacer un pseudocodigo y diagrama de flujo?¿Como hacer un pseudocodigo y diagrama de flujo?
¿Como hacer un pseudocodigo y diagrama de flujo?
grachika
 
Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)
YJGG
 
Ejercicio 1 diagrama de flujo
Ejercicio 1 diagrama de flujoEjercicio 1 diagrama de flujo
Ejercicio 1 diagrama de flujo
lisvancelis
 

Tendances (20)

preguntas de algoritmos
preguntas de algoritmospreguntas de algoritmos
preguntas de algoritmos
 
Estructuras condicionales
Estructuras condicionalesEstructuras condicionales
Estructuras condicionales
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Identificadores en Lógia de Programación
Identificadores en Lógia de ProgramaciónIdentificadores en Lógia de Programación
Identificadores en Lógia de Programación
 
Mapa conceptual de algoritmos
Mapa conceptual de algoritmosMapa conceptual de algoritmos
Mapa conceptual de algoritmos
 
Qué es uml, PARA QUE SIRVE, PASOS
Qué es uml, PARA QUE SIRVE, PASOSQué es uml, PARA QUE SIRVE, PASOS
Qué es uml, PARA QUE SIRVE, PASOS
 
Cuestionario de algoritmos
Cuestionario de algoritmosCuestionario de algoritmos
Cuestionario de algoritmos
 
Ejercicios Resueltos de Diagrama de flujo
Ejercicios Resueltos de Diagrama de flujo Ejercicios Resueltos de Diagrama de flujo
Ejercicios Resueltos de Diagrama de flujo
 
DESARROLLO DE PROTOTIPOS
DESARROLLO DE PROTOTIPOSDESARROLLO DE PROTOTIPOS
DESARROLLO DE PROTOTIPOS
 
P. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetosP. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetos
 
Tipos de atributos y tipos de relaciones
Tipos de atributos y tipos de relacionesTipos de atributos y tipos de relaciones
Tipos de atributos y tipos de relaciones
 
Tutorial PSEINT
Tutorial PSEINT Tutorial PSEINT
Tutorial PSEINT
 
EJERCICIOS DE ALGORITMOS
EJERCICIOS DE ALGORITMOSEJERCICIOS DE ALGORITMOS
EJERCICIOS DE ALGORITMOS
 
Lógica y Algoritmos 4. estructuras secuenciales y selectivas
Lógica y Algoritmos 4. estructuras secuenciales y selectivasLógica y Algoritmos 4. estructuras secuenciales y selectivas
Lógica y Algoritmos 4. estructuras secuenciales y selectivas
 
Estructura básica de un programa en C++
Estructura básica de un programa en C++Estructura básica de un programa en C++
Estructura básica de un programa en C++
 
Ppt algoritmo
Ppt algoritmoPpt algoritmo
Ppt algoritmo
 
¿Como hacer un pseudocodigo y diagrama de flujo?
¿Como hacer un pseudocodigo y diagrama de flujo?¿Como hacer un pseudocodigo y diagrama de flujo?
¿Como hacer un pseudocodigo y diagrama de flujo?
 
Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)
 
Ejercicio 1 diagrama de flujo
Ejercicio 1 diagrama de flujoEjercicio 1 diagrama de flujo
Ejercicio 1 diagrama de flujo
 
maquinas de turing
maquinas de turingmaquinas de turing
maquinas de turing
 

Similaire à Introduccion al Pensamiento Algoritmico

Unidad 02 metodología para solucionar un problema
Unidad 02   metodología para solucionar un problemaUnidad 02   metodología para solucionar un problema
Unidad 02 metodología para solucionar un problema
Lorenzo Alejo
 
Integrantes kevin barahona
Integrantes kevin barahonaIntegrantes kevin barahona
Integrantes kevin barahona
08011997
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujo
casdilacol
 

Similaire à Introduccion al Pensamiento Algoritmico (20)

Axel compu inf2
Axel compu inf2Axel compu inf2
Axel compu inf2
 
Informacion algorit descript_16julio
Informacion algorit descript_16julioInformacion algorit descript_16julio
Informacion algorit descript_16julio
 
Inf2_p1b_exc2_celina_mitzi
Inf2_p1b_exc2_celina_mitziInf2_p1b_exc2_celina_mitzi
Inf2_p1b_exc2_celina_mitzi
 
Definiciones
DefinicionesDefiniciones
Definiciones
 
Unidad 02 metodología para solucionar un problema
Unidad 02   metodología para solucionar un problemaUnidad 02   metodología para solucionar un problema
Unidad 02 metodología para solucionar un problema
 
Inf2 exc2 mitchellsalazarbarradas
Inf2 exc2  mitchellsalazarbarradasInf2 exc2  mitchellsalazarbarradas
Inf2 exc2 mitchellsalazarbarradas
 
Inf2 exc2 mitchellsalazarbarradas
Inf2 exc2  mitchellsalazarbarradasInf2 exc2  mitchellsalazarbarradas
Inf2 exc2 mitchellsalazarbarradas
 
Formulación de Algoritmos.pptx
Formulación de Algoritmos.pptxFormulación de Algoritmos.pptx
Formulación de Algoritmos.pptx
 
Los algoritmos
Los algoritmosLos algoritmos
Los algoritmos
 
Integrantes kevin barahona
Integrantes kevin barahonaIntegrantes kevin barahona
Integrantes kevin barahona
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujo
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
programacion.pptx
programacion.pptxprogramacion.pptx
programacion.pptx
 
Introduccion a las técnicas de programación
Introduccion a las técnicas de programaciónIntroduccion a las técnicas de programación
Introduccion a las técnicas de programación
 
Definiciones
DefinicionesDefiniciones
Definiciones
 
Defiiciones
DefiicionesDefiiciones
Defiiciones
 
algoritmos-.ppt
algoritmos-.pptalgoritmos-.ppt
algoritmos-.ppt
 
Inf2 exc2 jessica
Inf2 exc2  jessicaInf2 exc2  jessica
Inf2 exc2 jessica
 
LI_1164_140518_A_Analisis_Diseno_Implantacion_Algoritmos_Plan2016.pdf
LI_1164_140518_A_Analisis_Diseno_Implantacion_Algoritmos_Plan2016.pdfLI_1164_140518_A_Analisis_Diseno_Implantacion_Algoritmos_Plan2016.pdf
LI_1164_140518_A_Analisis_Diseno_Implantacion_Algoritmos_Plan2016.pdf
 
Desarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamientoDesarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamiento
 

Plus de Zaory Zaory (7)

Industria Química Orgánica
Industria Química Orgánica Industria Química Orgánica
Industria Química Orgánica
 
Aromaticos
AromaticosAromaticos
Aromaticos
 
C# for Beginners
C# for BeginnersC# for Beginners
C# for Beginners
 
Polimerizacion
PolimerizacionPolimerizacion
Polimerizacion
 
Plásticos
PlásticosPlásticos
Plásticos
 
Historia de la Industria Química Orgánica
Historia de la Industria Química OrgánicaHistoria de la Industria Química Orgánica
Historia de la Industria Química Orgánica
 
Aplicación de la Conductimetría
Aplicación de la Conductimetría Aplicación de la Conductimetría
Aplicación de la Conductimetría
 

Dernier

LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdfLA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
bcondort
 
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
gustavoiashalom
 

Dernier (20)

Tinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaTinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiología
 
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdfLA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
 
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
 
Quimica Raymond Chang 12va Edicion___pdf
Quimica Raymond Chang 12va Edicion___pdfQuimica Raymond Chang 12va Edicion___pdf
Quimica Raymond Chang 12va Edicion___pdf
 
DISEÑO PAVIMENTOS CLASE 06 PAVIMENTOS.pdf
DISEÑO PAVIMENTOS CLASE 06 PAVIMENTOS.pdfDISEÑO PAVIMENTOS CLASE 06 PAVIMENTOS.pdf
DISEÑO PAVIMENTOS CLASE 06 PAVIMENTOS.pdf
 
TIPOS DE SOPORTES - CLASIFICACION IG.pdf
TIPOS DE SOPORTES - CLASIFICACION IG.pdfTIPOS DE SOPORTES - CLASIFICACION IG.pdf
TIPOS DE SOPORTES - CLASIFICACION IG.pdf
 
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
 
Ficha Tecnica de Ladrillos de Tabique de diferentes modelos
Ficha Tecnica de Ladrillos de Tabique de diferentes modelosFicha Tecnica de Ladrillos de Tabique de diferentes modelos
Ficha Tecnica de Ladrillos de Tabique de diferentes modelos
 
Determinación de espacios en la instalación
Determinación de espacios en la instalaciónDeterminación de espacios en la instalación
Determinación de espacios en la instalación
 
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
 
Maquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdfMaquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdf
 
Sesion 03 Formas de absorcion de agua.pptx
Sesion 03 Formas de absorcion de agua.pptxSesion 03 Formas de absorcion de agua.pptx
Sesion 03 Formas de absorcion de agua.pptx
 
Desigualdades e inecuaciones-convertido.pdf
Desigualdades e inecuaciones-convertido.pdfDesigualdades e inecuaciones-convertido.pdf
Desigualdades e inecuaciones-convertido.pdf
 
ingenieria grafica para la carrera de ingeniera .pptx
ingenieria grafica para la carrera de ingeniera .pptxingenieria grafica para la carrera de ingeniera .pptx
ingenieria grafica para la carrera de ingeniera .pptx
 
PostgreSQL on Kubernetes Using GitOps and ArgoCD
PostgreSQL on Kubernetes Using GitOps and ArgoCDPostgreSQL on Kubernetes Using GitOps and ArgoCD
PostgreSQL on Kubernetes Using GitOps and ArgoCD
 
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdf
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdfAnálisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdf
Análisis_y_Diseño_de_Estructuras_con_SAP_2000,_5ta_Edición_ICG.pdf
 
Sistema de lubricación para motores de combustión interna
Sistema de lubricación para motores de combustión internaSistema de lubricación para motores de combustión interna
Sistema de lubricación para motores de combustión interna
 
422382393-Curso-de-Tableros-Electricos.pptx
422382393-Curso-de-Tableros-Electricos.pptx422382393-Curso-de-Tableros-Electricos.pptx
422382393-Curso-de-Tableros-Electricos.pptx
 
CALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptxCALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptx
 
ATS-FORMATO cara.pdf PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf  PARA TRABAJO SEGUROATS-FORMATO cara.pdf  PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf PARA TRABAJO SEGURO
 

Introduccion al Pensamiento Algoritmico

  • 1. Introducción al Pensamiento algorítmico Dr. Wilian Bravo Escuela de Ciencias Químicas ESPOCH
  • 2. CONTENIDO ¿Qué es un algoritmo? ¿Qué es el pensamiento algorítmico? ¿Cómo se comunican los algoritmos? ¿Por qué son importantes los algoritmos? ¿Cuáles son las propiedades importantes de algoritmos? Un ejemplo - cómo crear un algoritmo
  • 3. ¿Qué es un algoritmo?  Un algoritmo es un conjunto de instrucciones paso a paso precisas para la solución de una tarea. Un algoritmo no resuelve una tarea; ella le da una serie de pasos que, si se ejecuta correctamente, se traducirá en una solución a una tarea. Utilizamos algoritmos cada día, pero que a menudo no hacemos explícitamente pensando acerca de los pasos individuales del algoritmo. Por ejemplo, a partir de su coche, vestirse, iniciando sesión en su ordenador, o para cocinar un plato de comida, están todos a cabo usando un algoritmo, una serie paso a paso de las acciones.
  • 4.  Para un algoritmo sea válida, cada paso (o instrucción) deben ser:  No ambiguo- la instrucción sólo puede ser interpretado de una manera única  Ejecutable - la persona o dispositivo de ejecutar la instrucción deben saber cómo llevar a cabo la instrucción sin ninguna información adicional.  Ordenado - los pasos de un algoritmo deben ser ordenados en una secuencia adecuada para llevar a cabo correctamente la tarea.
  • 6. ¿Qué es el pensamiento algorítmico?  Pensamiento algorítmico es la capacidad de entender, ejecutar, evaluar y crear algoritmos. Vamos a discutir cada una de estas ideas por separado.  Ser un PENSADOR ALGORÍTMICO necesita la capacidad de comprender y ejecutar algoritmos. Para algunas personas es fácil de seguir una serie de instrucciones precisas, mientras que otras personas les resulta muy difícil. Algunas personas parecen carecer de la paciencia y la diligencia necesaria para seguir un plan paso a paso. Sin embargo, esta es una habilidad valiosa que todas las personas deben dominar. Pensamiento algorítmico requiere paciencia debido a que cada instrucción se debe ejecutar en su secuencia correcta sin saltar por delante o "pasando por alto" algunos de la s instrucciones. Además, pensamiento algorítmico requiere diligencia y perseverancia. A menudo es tedioso para seguir los pasos de un algoritmo complejo y la gente a veces no logra completar un algoritmo porque, simplemente, "se dan por vencidos."
  • 7.  El Pensamiento algorítmico también requiere la capacidad de evaluar algoritmos. Esto implica la determinación de si un algoritmo realmente resuelve una tarea dada.
  • 8.  For example, a "preflight check list" is an algorithm for preparing an aircraft for take off. Suppose you were given the job of determining if a new "preflight check list" for the F35 (Joint Strike Fighter) is correct (checks all systems on the aircraft properly) and complete (does not leave out any important checks). Hopefully you would agree that this is an important job – pilot's lives are dependent on getting it right – and that getting the check list correct and complete will not be easy. (As a side note, one way to create the preflight check list is to determine the fault of each new aircraft crash and add a new check to the list to prevent future crashes. But the cost in lives and money is too great. We need to get the algorithm correct and complete before the first plane takes to flight to prevent a single aircraft loss!)
  • 9.  Y finalmente, el pensamiento algorítmico incluye la capacidad de crear nuevos algoritmos. Este es probablemente el aspecto más desafiante del pensamiento algorítmico. Dada una tarea, se puede crear una serie de precisas, instrucciones paso a paso que siempre resuelve la tarea correctamente? Obviamente, la complejidad de la tarea tiene un gran impacto en la complejidad de un algoritmo que cumplir con la tarea. Las tareas simples puede típicamente llevarse a cabo con algoritmos simples, mientras que las tareas complejas requieren típicamente algoritmos más complejos.
  • 10. ¿Cómo se comunican los algoritmos?  Cada paso (instrucción) de un algoritmo debe indicarse con precisión. Es muy difícil de explicar algoritmos precisamente utilizando sólo el idioma Inglés. Por ejemplo, por favor vuelva a leer el ejemplo algoritmo para la fabricación de "pastel cuadrado de limón congelado " y luego responder a las siguientes preguntas:  ¿La leche vienen en envases de diferentes tamaños? ¿Cuánta leche contiene 1 lata"?  ¿Importa qué tipos de batidores se utiliza para batir a la leche?  Es "cucharadita" una cucharadita o una cuchara de mesa?
  • 11.  Muchos lenguajes de programación se han desarrollado a lo largo de los años y cada idioma tiene sus propias características y beneficios especiales. Usted probablemente ha oído hablar de algunos de estos lenguajes, como C, C ++, Pascal, Basic, Java, Perl, Python, y Ada. Se requiere una cantidad significativa de tiempo para aprender un nuevo lenguaje de programación.  Queremos principiantes para convertirse en mejores solucionadores de problemas al convertirse en pensadores algorítmicos.  Una de las formas más comunes para expresar algoritmos sin necesidad de utilizar un lenguaje de programación que se llama diagramas de flujo . Los diagramas de flujo proporcionan una descripción visual de un proceso paso a paso. El principal inconveniente de utilizar diagramas de flujo es que son tedioso para dibujar y difícil de modificar si se dibujan mano en papel.
  • 12. RAPTOR  A computer program called RAPTOR was developed by Dr. Carlisle here at USAFA which allows a person to create an algorithm in flowchart form and then actually execute the flowchart to test its validity. Pretty cool! We will discuss the details of how to use RAPTOR in future lessons. United States Air Force Academy
  • 13. ¿Cuáles son las propiedades importantes de algoritmos?  La siguiente es una lista de algunas de las propiedades importantes de los algoritmos.  Propiedad 1: Para una tarea no trivial dada (o conjunto de tareas relacionadas), hay muchos algoritmos posibles para llevar a cabo la tarea.  Esto confunde mucho a muchos estudiantes. "¿Quieres decir que hay más de una respuesta correcta?" La respuesta es SÍ! Recuerde, un algoritmo no es la solución a un problema; es un conjunto de instrucciones paso para encontrar una solución.
  • 14.  Propiedad 2: Un algoritmo no codifica la teoría que subyace detrás de los pasos de la INSTRUCCIÓN.  Un algoritmo explica cómo realizar una tarea. Si el algoritmo es correcto, y usted sigue las instrucciones exactamente, usted logrará la tarea. Pero es posible que no entienda el porqué de algunos de los pasos.
  • 15.  Propiedad 3: Algunos algoritmos son más eficientes que otros algoritmos.  La ejecución de un algoritmo requiere una cierta cantidad de tiempo. Si se utiliza un algoritmo menudo, su eficiencia se convierte en un problema. Es común para crear múltiples algoritmos para llevar a cabo una tarea en particular y luego seleccionar el algoritmo más rápido para incluir en un producto final. Uno de los RETOS es de desarrollo de software es decidir cuánto tiempo y esfuerzo que usted debe gastar en la búsqueda y desarrollo de más algoritmos eficientes.
  • 16.  Propiedad 4: Programas de ordenador que se utilizan desde hace muchos años por lo general deben ser modificadas con el tiempo para adaptarse a los cambios en los requisitos de la tarea.  Los programas de ordenador no son típicamente objetos estáticos. Ellos requieren de "mantenimiento" para mantenerlos con cambios en los requisitos de la tarea. Por ejemplo, un programa informático que calcula los impuestos de renta debe cambiar todos los años a medida que cambian las leyes de impuesto sobre la renta. Algunos estudios han demostrado que hasta un 75% de los costos de desarrollo de software son consumidos por el mantenimiento de los programas informáticos existentes.
  • 17.  En conclusión, cuando desarrollamos nuevos algoritmos, tratamos de crear una de las muchas posibles secuencias de instrucciones que va a resolver nuestra tarea en cuestión. Idealmente nos gustaría que el algoritmo se ejecute rápidamente, que este bien "comentado" y que puede mantener fácilmente en el tiempo.
  • 18. Practica No 1. Creando Algoritmos básicos  Crear un algoritmo utilizado el software RAPTOR, mismo que debe resolver un problema básico utilizando ecuaciones.  Crear ejemplos de la solución a la ecuación cuadrática  Crear ejemplos de la media de elementos en un array.  Enviar el archivo junto con el tutorial correspondiente.
  • 19. Lección número 1 Escriba la clasificación de modelos(modelación) ¿Qué es un algoritmo? Porque cree que es importante la modelación en sistemas ambientales? Proponga un algoritmo para una tarea sencilla, puede ser incluso que no se requiera una ecuación para resolverlo