SlideShare una empresa de Scribd logo
1 de 21
Descargar para leer sin conexión
ALGORITMOS
UNPAZ
Introducción a la Programación
Algoritmos
Fuente: https://www.programiz.com/python-programming/
Concepto de Algoritmo
• Un algoritmo es una secuencia ordenada de acciones (llamadas “acciones primitivas”) que pueden ser
ejecutadas por una máquina y que dan la solución a un problema dado.
• Un algoritmo es un método para resolver un problema mediante una serie de pasos.
• Los algoritmos son independientes tanto del lenguaje de programación en que se expresan como de la
computadora que los ejecuta.
• En cada problema el algoritmo se puede expresar en un lenguaje diferente de programación y
ejecutarse en una computadora distinta; sin embargo, el algoritmo será siempre el mismo.
Algoritmos
Propiedades del Algoritmo
• Un algoritmo debe ser preciso e indicar el orden de realización de cada paso.
• Un algoritmo debe estar definido. Si se sigue un algoritmo dos veces, se debe obtener el mismo
resultado cada vez.
• Un algoritmo debe ser finito. Si se sigue un algoritmo, se debe terminar en algún momento; o sea,
debe tener un número finito de pasos.
• Un algoritmo debe especificar Entradas y Salidas
Algoritmos
Etapas del Algoritmo
• La definición de un algoritmo debe describir tres partes: Entrada, Proceso y Salida.
Enunciado 1: Preparar una tortilla de papas de 3 huevos.
Acciones:
T.1 Mezclar papas, huevos y algo de sal en un recipiente
T.2 Freirla
Entrada: ingredientes y utensilios.
Proceso: elaboración de la receta en la cocina.
Salida: terminación del plato.
Algoritmos
Etapas del Algoritmo
Enunciado 1: Preparar una tortilla de papas de 3 huevos.
• T.1 mezclar papas, huevos y una pizca de Sal en un recipiente
T1.1 Cortar las papas en láminas
T1.2 Calentar un recipiente con aceite
T1.3 colocar las papas en el recipiente
Si las papas estan doradas
entonces
• T1.3.1 retirarlas
sino
• T.1.3.2 dejarlas un tiempo más
T1.4 Batir los huevos en un recipiente
• T1.4.1 tomar un huevo de la mesada
• T1.4.2 cascar el huevo y verter su contenido en el recipiente
• T1.4.3 tirar la cáscara en el recipiente de residuos
T1.5 Verter las papas en el recipiente y echar una pizca de sal
• T.2 Freirla
• T2.1 Calentar el aceite en la sartén
• T2.2 verter el contenido del recipiente en la sartén
• T2.3 Dorar la tortilla
x
3
Algoritmos
Representación del Algoritmo
Para representar un algoritmo se debe utilizar algún método que permita independizar dicho algoritmo del
lenguaje de programación elegido. Ello permitirá que un algoritmo pueda ser codificado indistintamente en
cualquier lenguaje. Para conseguir este objetivo se precisa que el algoritmo sea representado gráfica o
numéricamente para su transformación en un programa, es decir, su codificación.
Representación según sus formas:
1. Gráfica
2. No Gráfica
Los métodos usuales para representar un algoritmo son:
1. Diagrama de flujo
2. Lenguaje de especificación de algoritmos: pseudocódigo,
Otros métodos:
3. Diagrama N-S (Nassi-Schneiderman),
4. Lenguaje formal español, inglés ...
5. Fórmulas
Algoritmos
Diagrama de Flujos
Un diagrama de flujo (flowchart) es una representación gráfica de un algoritmo. Los símbolos utilizados han
sido normalizados por el Instituto Norteamericano de Normalización (ANSI).
Algoritmos
Diagrama de Flujos
Veamos este ejemplo de la vida cotidiana representado desde un diagrama de flujos.
Algoritmos
Diagrama de Flujos
Veamos este ejemplo para la sumatoria de los primeros 5 números naturales:
Algoritmos
Pseudocodigo
El pseudocódigo es una herramienta de programación en la que las instrucciones se escriben en palabras que
facilitan tanto la escritura como la lectura de programas. En esencia, el pseudocódigo se puede definir como
un lenguaje de especificaciones de algoritmos.
Algoritmos
Diagrama N-S (Chapin)
El Diagrama N-S (Nassi-Schneiderman) -también conocido como diagrama de Chapin- es como un diagrama
de flujo en el que se omiten las flechas de unión y las cajas son contiguas. Las acciones sucesivas se
escriben en cajas sucesivas y, como en los diagramas de flujo, se pueden escribir diferentes acciones en una
caja.
Algoritmos
Fases de Resolución de los Algoritmos
El proceso de resolución de un problema conduce a la escritura de un programa y a su ejecución. Se puede
considerar una serie de fases o pasos comunes, que generalmente se deben seguir.
Las fases de resolución de un problema con computadora son:
• Análisis del problema.
• Diseño del algoritmo.
• Codificación.
• Compilación y ejecución.
• Verificación.
• Depuración.
• Mantenimiento.
• Documentación.
Algoritmos
Fases - Análisis del Problema
Esta fase requiere una clara definición, donde se contemple exactamente lo que debe hacer el programa y el
resultado o solución deseada.
Para poder definir bien un problema es conveniente responder a las siguientes preguntas:
¿Qué entradas se requieren? (tipo y cantidad).
¿Cuál es la salida deseada? (tipo y cantidad).
¿Qué método produce la salida deseada?
Algoritmos
Fases - Diseño del Problema
En la etapa de diseño se determina como hace el programa la tarea solicitada. Los métodos más eficaces para
el proceso de diseño se basan en el conocido por divide y vencerás.
La resolución de un problema complejo se realiza dividiendo el problema en subprogramas y a continuación
dividiendo nuevamente estos subprogramas en otros de nivel más bajo, hasta que pueda ser implementada
una solución en la computadora. Este método se conoce técnicamente como diseño descendente (top-down) o
modular.
Cada subprograma es resuelto mediante un módulo (subprograma) que tiene un solo punto de entrada y un
solo punto de salida.
Algoritmos
Fases - Codificación
Es la conversión de un algoritmo en programa. Es la etapa de escritura de la solución de un problema
(diagrama de flujo y pseudocódigo) en un código reconocible para la computadora a través de un lenguaje de
programación.
Algoritmos
Algoritmos y Programas
Antes dijimos que un algoritmo es una serie ordenada de pasos que se realizan para llegar a una
solución. ¿Qué relación tiene con un programa? Podemos decir que un programa es un algoritmo expresado
en un lenguaje que tanto la computadora como el programador puedan entender.
Algoritmos
Fases - Verificación y Depuración
La verificación formal de algoritmos es una técnica para demostrar la correctitud de un algoritmo previo a su
ejecución.
La depuración de programas es el proceso de identificar y corregir errores de programación. En inglés se
conoce como debugging, porque se asemeja a la eliminación de bichos (bugs), manera en que se conoce
informalmente a los errores de programación.
Algoritmos
Fases - Mantenimiento y Documentación
El mantenimiento de un software se puede realizar, básicamente, en dos sentidos: reparación o modificación.
Una vez implantada la aplicación, todavía pueden producirse errores no detectados en las fases anteriores, los
cuales implicarán efectuar correcciones de errores (fix). Por otra parte, puede ser que a la aplicación se le
quiera ampliar o cambiar alguna funcionalidad, lo cual llevará consigo realizar modificaciones.
La documentación para el usuario constituye un elemento de consulta para toda aquella persona que va a
usar el programa por primera vez o que trata de saber si el programa servirá a sus objetivos.
• Descripción muy breve de las funciones y posibilidades del programa.
• Descripción breve del método de cálculo principal.
• Explicación breve de cómo debe usarse el programa y de los datos de entrada, opciones y resultados.
• Ejemplos paso a paso de uso del programa en número suficiente para comprender las posibilidades que se
brindan.
• Diagrama de flujo del programa de carácter sintético y descriptivo.
• Especificación detallada de todas las opciones contenidas en menús.
Algoritmos
Imaginemos otro Algoritmo
Diagramar un algoritmo que describa la lógica para, dados los 3 lados de un triángulo, determinar el tipo del mismo. Tres
lados iguales… es equilátero. Dos lados iguales, es isósceles. Tres lados desiguales, es escaleno
Entrada: Lado A, Lado B y Lado C
Proceso: Evaluación del tamaño de cada lado
Salida: Informar el tipo de triángulo
T.1 Ingresar las dimensiones del triángulo
t1.0 ingresar dimensión lado A
t1.1 ingresar dimensión lado B
t1.2 ingresar dimension lado C
T.2 verificar tipo de triángulo
T2.1 verificar dimensiones
Si Lado A = Lado B y Lado A = Lado C
Determino que es Equilatero
Si (Lado A = Lado B) o (Lado B = Lado C ) o (Lado A = Lado C)
Determino que es Isoceles
Sino
Determino que es Isosceles
T.3 Notificar resultado
t3.1 Mostrar el resultado en una pantalla
Algoritmos
Imaginemos un Algoritmo en nuestra vida cotidiana
Diagramar un algoritmo que describa la lógica para una persona que viaja de lunes a viernes para ir a estudiar
a la universidad de JCPaz.
Entrada: Zona en la que vive y transporte que toma
Proceso: Transportar al estudiante hasta la universidad
Salida: Notifica a su familia que llegó bien a la universidad.
Gracias
Fuente: https://www.programiz.com/python-programming/

Más contenido relacionado

Similar a 01_IntroduccionAlgoritmos (1).pdf

Desarrollo de lógica algorítmica
Desarrollo de lógica algorítmicaDesarrollo de lógica algorítmica
Desarrollo de lógica algorítmicaOmar B.
 
Diseño de pseudocodigo
Diseño de pseudocodigoDiseño de pseudocodigo
Diseño de pseudocodigoANIMEFLV
 
Algoritmos (DFD, Pseudocodigos).pptx
Algoritmos (DFD, Pseudocodigos).pptxAlgoritmos (DFD, Pseudocodigos).pptx
Algoritmos (DFD, Pseudocodigos).pptxTIRZOANTONIOMEDINACA1
 
Algoritmos con decisiones.pptx
Algoritmos con decisiones.pptxAlgoritmos con decisiones.pptx
Algoritmos con decisiones.pptxMauroTapiaMuoz
 
Fases Para Solucionar Problemas con computadoras
Fases Para Solucionar Problemas con computadorasFases Para Solucionar Problemas con computadoras
Fases Para Solucionar Problemas con computadorasJosmary Romero
 
Algoritmo poncho
Algoritmo ponchoAlgoritmo poncho
Algoritmo ponchoPoncho14
 
Resolución de problemas y algoritmo
Resolución de problemas y algoritmoResolución de problemas y algoritmo
Resolución de problemas y algoritmoNombre Apellidos
 
DEFINICIÓN DE LENGUAJES ALGORÍTMICOS
DEFINICIÓN DE LENGUAJES ALGORÍTMICOSDEFINICIÓN DE LENGUAJES ALGORÍTMICOS
DEFINICIÓN DE LENGUAJES ALGORÍTMICOSadark
 
Conceptos básicos de algorítmica
Conceptos básicos de algorítmicaConceptos básicos de algorítmica
Conceptos básicos de algorítmicacolegio emanuel
 
Semana 1 - Principios de Algoritmos.pdf
Semana 1 - Principios de Algoritmos.pdfSemana 1 - Principios de Algoritmos.pdf
Semana 1 - Principios de Algoritmos.pdfCarlosJahnsen3
 
Unidad algoritmos y df
Unidad algoritmos y dfUnidad algoritmos y df
Unidad algoritmos y dfernestdo1
 
Unidad 1
Unidad 1Unidad 1
Unidad 1henser
 
Fpr Tema 1 www.fresymetal.com
Fpr Tema 1 www.fresymetal.comFpr Tema 1 www.fresymetal.com
Fpr Tema 1 www.fresymetal.comFresyMetal
 
Solución de problemas aplicando la computadora
Solución de problemas aplicando la computadoraSolución de problemas aplicando la computadora
Solución de problemas aplicando la computadorarestradal
 

Similar a 01_IntroduccionAlgoritmos (1).pdf (20)

Desarrollo de lógica algorítmica
Desarrollo de lógica algorítmicaDesarrollo de lógica algorítmica
Desarrollo de lógica algorítmica
 
Algoritmos y programacion en C++
Algoritmos y programacion en C++Algoritmos y programacion en C++
Algoritmos y programacion en C++
 
Diseño de pseudocodigo
Diseño de pseudocodigoDiseño de pseudocodigo
Diseño de pseudocodigo
 
Algoritmos y programas estructuras
Algoritmos y programas estructurasAlgoritmos y programas estructuras
Algoritmos y programas estructuras
 
Algoritmos (DFD, Pseudocodigos).pptx
Algoritmos (DFD, Pseudocodigos).pptxAlgoritmos (DFD, Pseudocodigos).pptx
Algoritmos (DFD, Pseudocodigos).pptx
 
Algoritmos con decisiones.pptx
Algoritmos con decisiones.pptxAlgoritmos con decisiones.pptx
Algoritmos con decisiones.pptx
 
Fases Para Solucionar Problemas con computadoras
Fases Para Solucionar Problemas con computadorasFases Para Solucionar Problemas con computadoras
Fases Para Solucionar Problemas con computadoras
 
Algoritmo poncho
Algoritmo ponchoAlgoritmo poncho
Algoritmo poncho
 
Algoritmo
Algoritmo Algoritmo
Algoritmo
 
Resolución de problemas y algoritmo
Resolución de problemas y algoritmoResolución de problemas y algoritmo
Resolución de problemas y algoritmo
 
DEFINICIÓN DE LENGUAJES ALGORÍTMICOS
DEFINICIÓN DE LENGUAJES ALGORÍTMICOSDEFINICIÓN DE LENGUAJES ALGORÍTMICOS
DEFINICIÓN DE LENGUAJES ALGORÍTMICOS
 
Conceptos básicos de algorítmica
Conceptos básicos de algorítmicaConceptos básicos de algorítmica
Conceptos básicos de algorítmica
 
Foro de integracion
Foro de integracionForo de integracion
Foro de integracion
 
Semana 1 - Principios de Algoritmos.pdf
Semana 1 - Principios de Algoritmos.pdfSemana 1 - Principios de Algoritmos.pdf
Semana 1 - Principios de Algoritmos.pdf
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
Foro de integracion
Foro de integracionForo de integracion
Foro de integracion
 
Unidad algoritmos y df
Unidad algoritmos y dfUnidad algoritmos y df
Unidad algoritmos y df
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Fpr Tema 1 www.fresymetal.com
Fpr Tema 1 www.fresymetal.comFpr Tema 1 www.fresymetal.com
Fpr Tema 1 www.fresymetal.com
 
Solución de problemas aplicando la computadora
Solución de problemas aplicando la computadoraSolución de problemas aplicando la computadora
Solución de problemas aplicando la computadora
 

Último

Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteJuan Hernandez
 
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxPLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxJUANSIMONPACHIN
 
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdfLA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdfNataliaMalky1
 
La evolucion de la especie humana-primero de secundaria
La evolucion de la especie humana-primero de secundariaLa evolucion de la especie humana-primero de secundaria
La evolucion de la especie humana-primero de secundariamarco carlos cuyo
 
PPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfPPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfEDILIAGAMBOA
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleJonathanCovena1
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOweislaco
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialpatriciaines1993
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas123yudy
 
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfBIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfCESARMALAGA4
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressionsConsueloSantana3
 
Plan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPEPlan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPELaura Chacón
 
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfFisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfcoloncopias5
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfManuel Molina
 
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...JAVIER SOLIS NOYOLA
 
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxc3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxMartín Ramírez
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxdanalikcruz2000
 

Último (20)

Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parte
 
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxPLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
 
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdfLA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
 
La evolucion de la especie humana-primero de secundaria
La evolucion de la especie humana-primero de secundariaLa evolucion de la especie humana-primero de secundaria
La evolucion de la especie humana-primero de secundaria
 
PPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfPPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdf
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo Sostenible
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundial
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas
 
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdfTema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
 
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfBIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressions
 
Plan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPEPlan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPE
 
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfFisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
 
TL/CNL – 2.ª FASE .
TL/CNL – 2.ª FASE                       .TL/CNL – 2.ª FASE                       .
TL/CNL – 2.ª FASE .
 
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
 
PPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptxPPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptx
 
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxc3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
 

01_IntroduccionAlgoritmos (1).pdf

  • 2. Algoritmos Fuente: https://www.programiz.com/python-programming/ Concepto de Algoritmo • Un algoritmo es una secuencia ordenada de acciones (llamadas “acciones primitivas”) que pueden ser ejecutadas por una máquina y que dan la solución a un problema dado. • Un algoritmo es un método para resolver un problema mediante una serie de pasos. • Los algoritmos son independientes tanto del lenguaje de programación en que se expresan como de la computadora que los ejecuta. • En cada problema el algoritmo se puede expresar en un lenguaje diferente de programación y ejecutarse en una computadora distinta; sin embargo, el algoritmo será siempre el mismo.
  • 3. Algoritmos Propiedades del Algoritmo • Un algoritmo debe ser preciso e indicar el orden de realización de cada paso. • Un algoritmo debe estar definido. Si se sigue un algoritmo dos veces, se debe obtener el mismo resultado cada vez. • Un algoritmo debe ser finito. Si se sigue un algoritmo, se debe terminar en algún momento; o sea, debe tener un número finito de pasos. • Un algoritmo debe especificar Entradas y Salidas
  • 4. Algoritmos Etapas del Algoritmo • La definición de un algoritmo debe describir tres partes: Entrada, Proceso y Salida. Enunciado 1: Preparar una tortilla de papas de 3 huevos. Acciones: T.1 Mezclar papas, huevos y algo de sal en un recipiente T.2 Freirla Entrada: ingredientes y utensilios. Proceso: elaboración de la receta en la cocina. Salida: terminación del plato.
  • 5. Algoritmos Etapas del Algoritmo Enunciado 1: Preparar una tortilla de papas de 3 huevos. • T.1 mezclar papas, huevos y una pizca de Sal en un recipiente T1.1 Cortar las papas en láminas T1.2 Calentar un recipiente con aceite T1.3 colocar las papas en el recipiente Si las papas estan doradas entonces • T1.3.1 retirarlas sino • T.1.3.2 dejarlas un tiempo más T1.4 Batir los huevos en un recipiente • T1.4.1 tomar un huevo de la mesada • T1.4.2 cascar el huevo y verter su contenido en el recipiente • T1.4.3 tirar la cáscara en el recipiente de residuos T1.5 Verter las papas en el recipiente y echar una pizca de sal • T.2 Freirla • T2.1 Calentar el aceite en la sartén • T2.2 verter el contenido del recipiente en la sartén • T2.3 Dorar la tortilla x 3
  • 6. Algoritmos Representación del Algoritmo Para representar un algoritmo se debe utilizar algún método que permita independizar dicho algoritmo del lenguaje de programación elegido. Ello permitirá que un algoritmo pueda ser codificado indistintamente en cualquier lenguaje. Para conseguir este objetivo se precisa que el algoritmo sea representado gráfica o numéricamente para su transformación en un programa, es decir, su codificación. Representación según sus formas: 1. Gráfica 2. No Gráfica Los métodos usuales para representar un algoritmo son: 1. Diagrama de flujo 2. Lenguaje de especificación de algoritmos: pseudocódigo, Otros métodos: 3. Diagrama N-S (Nassi-Schneiderman), 4. Lenguaje formal español, inglés ... 5. Fórmulas
  • 7. Algoritmos Diagrama de Flujos Un diagrama de flujo (flowchart) es una representación gráfica de un algoritmo. Los símbolos utilizados han sido normalizados por el Instituto Norteamericano de Normalización (ANSI).
  • 8. Algoritmos Diagrama de Flujos Veamos este ejemplo de la vida cotidiana representado desde un diagrama de flujos.
  • 9. Algoritmos Diagrama de Flujos Veamos este ejemplo para la sumatoria de los primeros 5 números naturales:
  • 10. Algoritmos Pseudocodigo El pseudocódigo es una herramienta de programación en la que las instrucciones se escriben en palabras que facilitan tanto la escritura como la lectura de programas. En esencia, el pseudocódigo se puede definir como un lenguaje de especificaciones de algoritmos.
  • 11. Algoritmos Diagrama N-S (Chapin) El Diagrama N-S (Nassi-Schneiderman) -también conocido como diagrama de Chapin- es como un diagrama de flujo en el que se omiten las flechas de unión y las cajas son contiguas. Las acciones sucesivas se escriben en cajas sucesivas y, como en los diagramas de flujo, se pueden escribir diferentes acciones en una caja.
  • 12. Algoritmos Fases de Resolución de los Algoritmos El proceso de resolución de un problema conduce a la escritura de un programa y a su ejecución. Se puede considerar una serie de fases o pasos comunes, que generalmente se deben seguir. Las fases de resolución de un problema con computadora son: • Análisis del problema. • Diseño del algoritmo. • Codificación. • Compilación y ejecución. • Verificación. • Depuración. • Mantenimiento. • Documentación.
  • 13. Algoritmos Fases - Análisis del Problema Esta fase requiere una clara definición, donde se contemple exactamente lo que debe hacer el programa y el resultado o solución deseada. Para poder definir bien un problema es conveniente responder a las siguientes preguntas: ¿Qué entradas se requieren? (tipo y cantidad). ¿Cuál es la salida deseada? (tipo y cantidad). ¿Qué método produce la salida deseada?
  • 14. Algoritmos Fases - Diseño del Problema En la etapa de diseño se determina como hace el programa la tarea solicitada. Los métodos más eficaces para el proceso de diseño se basan en el conocido por divide y vencerás. La resolución de un problema complejo se realiza dividiendo el problema en subprogramas y a continuación dividiendo nuevamente estos subprogramas en otros de nivel más bajo, hasta que pueda ser implementada una solución en la computadora. Este método se conoce técnicamente como diseño descendente (top-down) o modular. Cada subprograma es resuelto mediante un módulo (subprograma) que tiene un solo punto de entrada y un solo punto de salida.
  • 15. Algoritmos Fases - Codificación Es la conversión de un algoritmo en programa. Es la etapa de escritura de la solución de un problema (diagrama de flujo y pseudocódigo) en un código reconocible para la computadora a través de un lenguaje de programación.
  • 16. Algoritmos Algoritmos y Programas Antes dijimos que un algoritmo es una serie ordenada de pasos que se realizan para llegar a una solución. ¿Qué relación tiene con un programa? Podemos decir que un programa es un algoritmo expresado en un lenguaje que tanto la computadora como el programador puedan entender.
  • 17. Algoritmos Fases - Verificación y Depuración La verificación formal de algoritmos es una técnica para demostrar la correctitud de un algoritmo previo a su ejecución. La depuración de programas es el proceso de identificar y corregir errores de programación. En inglés se conoce como debugging, porque se asemeja a la eliminación de bichos (bugs), manera en que se conoce informalmente a los errores de programación.
  • 18. Algoritmos Fases - Mantenimiento y Documentación El mantenimiento de un software se puede realizar, básicamente, en dos sentidos: reparación o modificación. Una vez implantada la aplicación, todavía pueden producirse errores no detectados en las fases anteriores, los cuales implicarán efectuar correcciones de errores (fix). Por otra parte, puede ser que a la aplicación se le quiera ampliar o cambiar alguna funcionalidad, lo cual llevará consigo realizar modificaciones. La documentación para el usuario constituye un elemento de consulta para toda aquella persona que va a usar el programa por primera vez o que trata de saber si el programa servirá a sus objetivos. • Descripción muy breve de las funciones y posibilidades del programa. • Descripción breve del método de cálculo principal. • Explicación breve de cómo debe usarse el programa y de los datos de entrada, opciones y resultados. • Ejemplos paso a paso de uso del programa en número suficiente para comprender las posibilidades que se brindan. • Diagrama de flujo del programa de carácter sintético y descriptivo. • Especificación detallada de todas las opciones contenidas en menús.
  • 19. Algoritmos Imaginemos otro Algoritmo Diagramar un algoritmo que describa la lógica para, dados los 3 lados de un triángulo, determinar el tipo del mismo. Tres lados iguales… es equilátero. Dos lados iguales, es isósceles. Tres lados desiguales, es escaleno Entrada: Lado A, Lado B y Lado C Proceso: Evaluación del tamaño de cada lado Salida: Informar el tipo de triángulo T.1 Ingresar las dimensiones del triángulo t1.0 ingresar dimensión lado A t1.1 ingresar dimensión lado B t1.2 ingresar dimension lado C T.2 verificar tipo de triángulo T2.1 verificar dimensiones Si Lado A = Lado B y Lado A = Lado C Determino que es Equilatero Si (Lado A = Lado B) o (Lado B = Lado C ) o (Lado A = Lado C) Determino que es Isoceles Sino Determino que es Isosceles T.3 Notificar resultado t3.1 Mostrar el resultado en una pantalla
  • 20. Algoritmos Imaginemos un Algoritmo en nuestra vida cotidiana Diagramar un algoritmo que describa la lógica para una persona que viaja de lunes a viernes para ir a estudiar a la universidad de JCPaz. Entrada: Zona en la que vive y transporte que toma Proceso: Transportar al estudiante hasta la universidad Salida: Notifica a su familia que llegó bien a la universidad.