SlideShare una empresa de Scribd logo
1 de 53
SESIÓN 1DISEÑO ESTRUCTURADO DE ALGORITMOS L.I. María de los Ángeles Martínez Morales.
TEMARIO Conceptos básicos 1.1. Introducción 1.2. Definición de lenguaje, algoritmo y lenguajes algorítmicos 1.3. Metodología para la solución de problemas por medio de computadoras. 1.4. Entidades primitivas para el diseño de instrucciones. 1.5. Técnicas para la formulación de algoritmos.
TEMARIO Estructuras algorítmicas secuenciales 2.1. Asignación 2.2. Entrada 2.3. Salida 2.4. Solución de problemas Rutas algorítmicas condicionales 3.1. Si entonces 3.2. Si entonces sino 3.2. En caso de 3.4. Solución de problemas
TEMARIO Estructuras algorítmicas repetitivas 4.1. Mientras hacer 4.2. Hacer mientras 4.3. Hacer para 4.4. Solución de problemas
1. Conceptos básicos INTRODUCCIÓN La escritura de un programa de computadora consiste normalmente en implementar un método de resolución de un problema, que se ha diseñado previamente. Con frecuencia este método es independiente de la computadora utilizada: es igualmente válido para muchas de ellas. En cualquier caso es el método, no el programa, el que debe estudiarse para comprender cómo está siendo abordado el problema.
1. Conceptos básicos El objetivo del diseño estructurado de algoritmos es obtener la estructura modular y los detalles de proceso de un algoritmo. No se trata solamente de desarrollar un programa que “funcione”, sino que también sea fácil de mantener, que mejore su reutilización y se pueda probar y entender fácilmente.
1.2. 	Definición de lenguaje, algoritmo y lenguajes algorítmicos Un Lenguaje de Programaciónes aquél que es  utilizado para escribir programas de computadoras que puedan ser entendidos por ellas. Estos lenguajes se clasifican en tres grandes categorías  Lenguajes de máquina Lenguajes de bajo nivel Lenguajes de alto nivel
1.2. 	Definición de lenguaje, algoritmo y lenguajes algorítmicos Un algoritmo establece, de manera genérica e informal, la secuencia de pasos o acciones que resuelve un determinado problema. Los algoritmos constituyen la documentación principal que se necesita para poder iniciar la fase de codificación y, para representarlos, se utiliza, fundamentalmente, dos tipos de notación: pseudocódigo y diagramas de flujo. El diseño de un algoritmo es independiente del lenguaje que después se vaya a utilizar para codificarlo.
1.2. 	Definición de lenguaje, algoritmo y lenguajes algorítmicos ALGORITMO:  Conjunto de instrucciones que especifican la secuencia ordenada de operaciones a realizar para resolver un problema. En otras palabras, un algoritmo es un método o fórmula para la resolución de un problema. Un algoritmo es independiente tanto del lenguaje de programación en que se exprese como del ordenador en el que se ejecute.
1.2. 	Definición de lenguaje, algoritmo y lenguajes algorítmicos ALGORITMO Un algoritmo es un conjunto ordenado y finito de pasos usados en la solución de un problema o realización de una tarea.
CURIOSIDAD:  El término algoritmo es muy anterior a la era informática: proviene de Mohammed al-Khowārizmī(apellido que se tradujo al latín empleando la palabra “algoritmus”), matemático persa del siglo IX que enunció paso a paso las reglas para sumar, restar, multiplicar y dividir números decimales.
Características de un algoritmo
1.2. 	Definición de lenguaje, algoritmo y lenguajes algorítmicos Un algoritmo esta compuesto por: La etapa de entrada indica los datos que son necesarios para la solución del problema en cuestión.  En la etapa de proceso o procesamiento, es donde se realizan las operaciones que tienen que ver con la solución del problema. La etapa de salida es donde se mostrarán los resultados obtenidos en el procesamiento.
Algoritmos Cotidianos Se refiere a todos aquéllos algoritmos que nos ayudan a resolver problemas diarios, y que los hacemos casi sin darnos cuenta de que estamos siguiendo una metodología para resolverlos.
1.2. 	Definición de lenguaje, algoritmo y lenguajes algorítmicos Los lenguajes algorítmicos nos proporcionan metodologías que permiten representar cualquier problema (o casi cualquiera) para posteriormente expresarlo en un lenguaje de computadora. De lo anterior podemos concluir que, expresando correctamente un problema mediante un algoritmo, podemos representarlo en cualquier lenguaje de programación.
1.2. 	Definición de lenguaje, algoritmo y lenguajes algorítmicos Los algoritmos pueden describirse utilizando diversos lenguajes. Cada uno de estos lenguajes permiten describir los pasos con mayor o menor detalle. La clasificación de los lenguajes para algoritmos puede enunciarse de la siguiente manera : Lenguaje Natural Lenguaje de Diagramas de flujo Lenguaje Natural de Programación. Lenguaje de Programación de Algoritmos.
1.2. 	Definición de lenguaje, algoritmo y lenguajes algorítmicos Lenguaje Natural Es aquél que describe en español, para nuestro caso, los pasos a seguir utilizando un vocabulario cotidiano. Se le conoce  como lenguaje  jerga cuando se utilizan términos especializados de una determinada ciencia, profesión o grupo.
1.2. 	Definición de lenguaje, algoritmo y lenguajes algorítmicos Lenguaje de Diagramas de flujo Es aquél que se vale de diversos símbolos para representar las ideas o acciones a desarrollar. Es útil para organizar las acciones o pasos de un algoritmo pero requiere de etapas posteriores para implementarse en un sistema de cómputo.
1.2. 	Definición de lenguaje, algoritmo y lenguajes algorítmicos Lenguaje Natural de Programación. Son aquéllos que están orientados a la solución de problemas que se definen de una manera precisa. Generalmente son aplicados para la elaboración de fórmulas o métodos científicos. Tiene las siguientes características :        Evita la ambigüedad (algo confuso que se puede interpretar de varias maneras). Son precisos y bien definidos. Utilizan términos familiares al sentido común. Elimina instrucciones innecesarias.
1.2. 	Definición de lenguaje, algoritmo y lenguajes algorítmicos Lenguaje de Programación de Algoritmos. Es aquél que se utiliza para introducir en la computadora un algoritmo específico. Se les conoce también como Lenguaje de Programación.
1.3. Metodología para la solución de problemas por medio de computadoras. A fin de resolver un problema utilizando sistemas de cómputo, debe seguirse una serie de pasos que permiten avanzar por etapas bien definidas hacia la solución: Definición de Problema Análisis de los Datos Diseño de la Solución Codificación Prueba y Depuración Documentación Mantenimiento
Definición del problema Está dada en sí por el enunciado del problema, el cual debe ser claro y complejo. Es importante que conozcamos exactamente "que se desea obtener al final del proceso" ; mientras esto no se comprenda no puede pasarse a la siguiente etapa.
Análisis de los datos Para poder definir con precisión el problema se requiere que las especificaciones de entrada y salida sean descritas con detalle ya que esto es un requisito para lograr una solución eficaz.  Una vez que el problema ha sido definido y comprendido, deben analizarse los siguientes aspectos :
Análisis de los datos Los resultados esperados. Los datos de entrada disponibles. Herramientas a nuestro alcance para manipular los datos y alcanzar un resultado (fórmulas, tablas, accesorios diversos).
Diseño de la solución Una computadora no tiene capacidad para solucionar problemas más que cuando se le proporcionan los sucesivos pasos a realizar, esto se refiere a la obtención de un algoritmo que resuelva adecuadamente el problema. En caso de obtenerse varios algoritmos, seleccionar uno de ellos utilizando criterios ya conocidos. Esta etapa incluye la descripción del algoritmo resultante en un lenguaje natural, de diagrama de flujo o natural de programación. Como puede verse, solo se establece la metodología para alcanzar la solución en forma conceptual, es decir ; sin alcanzar la implementación en el sistema de cómputo.
Codificación Se refiere a la obtención de un programa definitivo que pueda ser comprensible para la máquina. Incluye una etapa que se reconoce como compilación. Si la codificación original se realizó en papel, previo a la compilación deberá existir un paso conocido como transcripción.
Prueba y depuración Una vez que se ha obtenido el programa ejecutable, este es sometido a prueba a fin de determinar si resuelve o no el problema planteado en forma satisfactoria. Las pruebas que se le aplican son de diversa índole y generalmente dependen del tipo de problema que se está resolviendo. Comúnmente se inicia la prueba de un programa introduciendo datos válidos, inválidos e incongruentes y observando como reacciona en cada ocasión. El proceso de depuración consiste en localizar los errores y corregirlos en caso de que estos existan. Si no existen errores, puede entenderse la depuración como una etapa de refinamiento en la que se ajustan detalles para optimizar el desempeño del programa.
Documentación Debido a que el programa resultante en esta etapa se encuentra totalmente depurado (sin errores), se procede a la utilización para resolver problemas del tipo que dio origen a su diseño.   En vista de que esta utilización no podrá ser supervisada en todas las ocasiones por el programador, debe crearse un manual o guía de operación que indique los pasos a seguir para utilizar el programa.
Mantenimiento Se refiere a las actualizaciones que deban aplicarse al programa cuando las circunstancias así lo requieran. Este programa deberá ser susceptible de ser modificado para adecuarlo a nuevas condiciones de operación. Cualquier actualización o cambio en el programa deberá reflejarse en su documentación.
1.4. Entidades primitivas para el diseño de instrucciones. Tipos de Datos Operadores y operandos Expresiones
Tipos de Datos Un dato se define como la expresión general que describe los objetos con los cuales opera una computadora. Los datos de entrada se transforman por el programa, después de las etapas intermedias, en datos de salida.
Tipos de Datos Los datos se clasifican en diversas categorías, según el tipo de máquina o del lenguaje en uso. Generalmente podemos encontrar las siguientes categorías : Numéricos Lógicos Cadenas
Datos numéricos Son aquéllos que representan una cantidad o valor determinado.   Su representación se lleva a cabo en los formatos ya conocidos (enteros, punto y fracciones decimales si estas existen).  Tipo entero (Integer) Tipo Real
Tipo de Dato Cadena o Carácter Son los datos que representan información textual (palabras, frases, símbolos, etc). Pueden distinguirse porque son delimitados por apóstrofes o comillas.  No representan valor alguno para efectos numéricos.  Datos de Tipo Carácter (Char) Datos de Tipo Cadena (String)
Tipos de Datos Lógicos Booleano Falso Verdadero Se utiliza para representar las alternativas (si/no) a determinadas condiciones. Por ejemplo, cuando se pide si un valor entero sea primo, la respuesta será verdadera o falsa, según sea.
Datos Simples y Compuestos Un dato simple es indivisible (atómico), es decir, no se puede descomponer. Ejemplo 1: Un año es un dato simple.Año...:2006Un año se expresa con un número entero, el cual no se puede descomponer.
Datos Simples y Compuestos Un dato compuesto está formado por otros datos.Ejemplo 2: una fecha es un dato compuesto por tres datos simples (día, mes, año).   Fecha:      día...: 30      mes...: 11      año...: 2006
Constantes y variables Una Constante es aquélla que no cambia de valor durante la ejecución de un programa (o comprobación de un algoritmo en este  caso).  Se representa en la forma descrita para cada categoría. Las Variables son aquéllas que pueden modificar su valor durante la ejecución de un programa (idem). Su representación se da a través de letras y símbolos generalmente numéricos a los que se les asigna un valor.
Operadores y Operandos   OPERADORES Un operador es el símbolo que determina el tipo de operación o relación que habrá de establecerse entre los operandos para alcanzar un resultado.
Operadores y Operandos   Los operadores se clasifican en tres grupos:  Aritméticos Relacionales Lógicos
Operadores Aritméticos Son aquéllos que permiten la realización de cálculos aritméticos. Utilizan operandos numéricos y proporcionan resultados numéricos.
Operadores Relacionales Permiten realizar comparaciones de valores de tipo numérico o carácter. Estos operadores sirven para expresar las condiciones en los algoritmos. Proporcionan resultados lógicos.
Operadores Lógicos Son aquéllos que permiten la combinación de condiciones para formar una sola expresión lógica. Utilizan operandos lógicos y proporcionan resultados lógicos también.
Prioridad de los operadores aritméticos
Prioridad de los operadores lógicos y relacionales
Asignación Una instrucción de asignación (o simplemente asignación) consiste en asignar el resultado de la evaluación de una expresión a una variable. Ejemplo 1: Dadas las declaraciones   PI = 3.141592   realarea, longitud, radio = 5.78
Entrada Una instrucción de entrada (o simplemente entrada) consiste en asignar a una o más variables, uno o más valores (datos) recibidos desde el exterior. Normalmente, los datos son recogidos desde la entrada estándar (el teclado), pero, también existen otros dispositivos de entrada (el ratón, el escáner,...).
Entrada leer( <nombre_de_la_variable_1>,         <nombre_de_la_variable_2>,          ...,         <nombre_de_la_variable_n>) leer( <lista_de_variables> )
Salida Una instrucción de salida (o simplemente salida) consiste en llevar hacia el exterior los valores (datos) obtenidos de la evaluación de una lista de expresiones. Normalmente, los datos son enviados a la salida estándar (la pantalla), pero, también existen otros dispositivos de salida (la impresora, el plotter,...).
Salida escribir( <expresión_1>, ..., <expresión_n> ) escribir( <lista_de_expresiones> )
Expresiones Las expresiones son combinaciones de constantes, variables, símbolos de operadores, paréntesis y nombres de funciones especiales. Las mismas ideas son utilizadas en notación matemática tradicional ; por ejemplo : a + b ( b+2)     Aquí los paréntesis indican el orden de cálculo.
1.5. Técnicas para la formulación de algoritmos. Las tres técnicas de formulación de algoritmos más populares son : Diagrama de flujo Pseudocódigo Diagrama estructurado
REFERENCIAS CASTILLO, Víctor.  Lenguajes algorítmicos.  Recuperado el 10 de Julio de 2011 de http://docente.ucol.mx/abolio/tareas/Lenguaje.pdf INSTITUTO TECNOLOGICO DE LA PAZ. Tutorial de  diseño estructruturado de algoritmos, recuperado el 10 de Julio de 2011 de http://sistemas.itlp.edu.mx/tutoriales/algoritmos/ RODRÍGUEZ, Sala Jesús. (2003). Introducción a la programación: teoría y práctica. Recuperado el 10 de Julio de 2011 de http://books.google.com.mx/books?id=nLMJsInMyBwC&pg=PA38&dq=introduccion+al+dise%C3%B1o+estructurado+de+algoritmos&hl=es&ei=llMaToORKoLUtQOG_czDDQ&sa=X&oi=book_result&ct=result&resnum=1&ved=0CCgQ6AEwAA#v=onepage&q&f=false UNIVERSIDAD NACIONAL DE COLOMBIA, Diseño estructurado de algoritmos, recuperado el 10 de Julio de 2011 de http://www.virtual.unal.edu.co/cursos/ingenieria/2001839/modulo1/cap_02/leccion_1.htm

Más contenido relacionado

La actualidad más candente

Pseudocodigos, algoritmos y diagramas de flujo
Pseudocodigos, algoritmos y diagramas de flujoPseudocodigos, algoritmos y diagramas de flujo
Pseudocodigos, algoritmos y diagramas de flujoJuan Pablo Tello Zapata
 
Lenguajes de programación.ppt
Lenguajes de programación.pptLenguajes de programación.ppt
Lenguajes de programación.pptEliezer Cordova
 
Trabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandraTrabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandraAlexandraMolinaSanchez
 
Clasificación de los lenguajes de programación
Clasificación de los lenguajes de programaciónClasificación de los lenguajes de programación
Clasificación de los lenguajes de programaciónd3m3nt3
 
Unidad 1 Ingenieria de software
Unidad 1 Ingenieria de softwareUnidad 1 Ingenieria de software
Unidad 1 Ingenieria de softwareJahiro Bojorquez
 
Clasificasion de lenguajes
Clasificasion de lenguajesClasificasion de lenguajes
Clasificasion de lenguajesAlex Javier
 
MDD - Desarrollo de software dirigido por modelos que funciona (de verdad!)
MDD - Desarrollo de software dirigido por modelos que funciona (de verdad!)MDD - Desarrollo de software dirigido por modelos que funciona (de verdad!)
MDD - Desarrollo de software dirigido por modelos que funciona (de verdad!)Jordi Cabot
 
Fundamentos de Programacion - Unidad 1 conceptos basicos
Fundamentos de Programacion - Unidad 1 conceptos basicosFundamentos de Programacion - Unidad 1 conceptos basicos
Fundamentos de Programacion - Unidad 1 conceptos basicosJosé Antonio Sandoval Acosta
 
Métricas de tamaño (Ingeniería de Software)
Métricas de tamaño (Ingeniería de Software)Métricas de tamaño (Ingeniería de Software)
Métricas de tamaño (Ingeniería de Software)Sergio Olivares
 
Tabla comparativa de paradigma de programacion estruturada y pradigma de prog...
Tabla comparativa de paradigma de programacion estruturada y pradigma de prog...Tabla comparativa de paradigma de programacion estruturada y pradigma de prog...
Tabla comparativa de paradigma de programacion estruturada y pradigma de prog...jose francisco arenas jimenez
 
1.3 lenguajes de simulacion y simuladores
1.3 lenguajes de simulacion y simuladores1.3 lenguajes de simulacion y simuladores
1.3 lenguajes de simulacion y simuladoresJoOsee Kette
 
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMASMETODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMASadark
 

La actualidad más candente (20)

Pseudocodigos, algoritmos y diagramas de flujo
Pseudocodigos, algoritmos y diagramas de flujoPseudocodigos, algoritmos y diagramas de flujo
Pseudocodigos, algoritmos y diagramas de flujo
 
Lenguajes de programación.ppt
Lenguajes de programación.pptLenguajes de programación.ppt
Lenguajes de programación.ppt
 
Diapositivas fundamentos-de-programacion
Diapositivas fundamentos-de-programacionDiapositivas fundamentos-de-programacion
Diapositivas fundamentos-de-programacion
 
Trabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandraTrabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandra
 
Clasificación de los lenguajes de programación
Clasificación de los lenguajes de programaciónClasificación de los lenguajes de programación
Clasificación de los lenguajes de programación
 
Ppt algoritmo
Ppt algoritmoPpt algoritmo
Ppt algoritmo
 
Unidad 1 Ingenieria de software
Unidad 1 Ingenieria de softwareUnidad 1 Ingenieria de software
Unidad 1 Ingenieria de software
 
Clasificasion de lenguajes
Clasificasion de lenguajesClasificasion de lenguajes
Clasificasion de lenguajes
 
Diseño Estructurado de Algoritmos
Diseño Estructurado de AlgoritmosDiseño Estructurado de Algoritmos
Diseño Estructurado de Algoritmos
 
Reglas de Produccion
Reglas de ProduccionReglas de Produccion
Reglas de Produccion
 
Metodo congruencial mixto en java
Metodo congruencial mixto en javaMetodo congruencial mixto en java
Metodo congruencial mixto en java
 
MDD - Desarrollo de software dirigido por modelos que funciona (de verdad!)
MDD - Desarrollo de software dirigido por modelos que funciona (de verdad!)MDD - Desarrollo de software dirigido por modelos que funciona (de verdad!)
MDD - Desarrollo de software dirigido por modelos que funciona (de verdad!)
 
Fundamentos de Programacion - Unidad 1 conceptos basicos
Fundamentos de Programacion - Unidad 1 conceptos basicosFundamentos de Programacion - Unidad 1 conceptos basicos
Fundamentos de Programacion - Unidad 1 conceptos basicos
 
Ingenieria de software
Ingenieria de softwareIngenieria de software
Ingenieria de software
 
Metodología WEB UWE
Metodología WEB UWEMetodología WEB UWE
Metodología WEB UWE
 
Métricas de tamaño (Ingeniería de Software)
Métricas de tamaño (Ingeniería de Software)Métricas de tamaño (Ingeniería de Software)
Métricas de tamaño (Ingeniería de Software)
 
Tabla comparativa de paradigma de programacion estruturada y pradigma de prog...
Tabla comparativa de paradigma de programacion estruturada y pradigma de prog...Tabla comparativa de paradigma de programacion estruturada y pradigma de prog...
Tabla comparativa de paradigma de programacion estruturada y pradigma de prog...
 
Proceso unificado
Proceso unificadoProceso unificado
Proceso unificado
 
1.3 lenguajes de simulacion y simuladores
1.3 lenguajes de simulacion y simuladores1.3 lenguajes de simulacion y simuladores
1.3 lenguajes de simulacion y simuladores
 
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMASMETODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS
 

Destacado

EJEMPLO DE ALGORITMOS ESTRUCTURADOS
EJEMPLO DE ALGORITMOS ESTRUCTURADOS EJEMPLO DE ALGORITMOS ESTRUCTURADOS
EJEMPLO DE ALGORITMOS ESTRUCTURADOS Edwin Vega Orozco
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionBoris Salleg
 
Informatica II - 2 Metodologia de Solucion de Problemas
Informatica II - 2 Metodologia de Solucion de ProblemasInformatica II - 2 Metodologia de Solucion de Problemas
Informatica II - 2 Metodologia de Solucion de ProblemasGabriel Ruiz
 
Capitulo 09 Estructura De Un Algoritmo
Capitulo 09 Estructura De Un AlgoritmoCapitulo 09 Estructura De Un Algoritmo
Capitulo 09 Estructura De Un AlgoritmoSENA
 
Algorítmos - Conceptos básicos
Algorítmos - Conceptos básicosAlgorítmos - Conceptos básicos
Algorítmos - Conceptos básicoscbertolotti
 
21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltos21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltosRoldan El Gato
 
Algoritmosconeptosbasicos 1
Algoritmosconeptosbasicos 1Algoritmosconeptosbasicos 1
Algoritmosconeptosbasicos 1Espoch_lvaca
 
2 Conceptos De Programacion
2 Conceptos De Programacion2 Conceptos De Programacion
2 Conceptos De ProgramacionRubén Márquez
 
Unidad 4 Técnicas para la formulación de algoritmos
Unidad 4 Técnicas para la formulación de algoritmosUnidad 4 Técnicas para la formulación de algoritmos
Unidad 4 Técnicas para la formulación de algoritmosCarlos M. Sandoval
 
Algoritmos computacionales
Algoritmos computacionalesAlgoritmos computacionales
Algoritmos computacionalesJose Gonzalez
 
Algoritmos y pseudocodigo
Algoritmos y pseudocodigoAlgoritmos y pseudocodigo
Algoritmos y pseudocodigomatteo_ibarguen
 
Heuristico y didactica metodos deductivo e inductivo
Heuristico y didactica metodos deductivo e inductivoHeuristico y didactica metodos deductivo e inductivo
Heuristico y didactica metodos deductivo e inductivojohselyn
 
Diseño de Algoritmos
 Diseño de Algoritmos Diseño de Algoritmos
Diseño de AlgoritmosTaniaCalle
 
Estructuras algoritmicas representación
Estructuras algoritmicas representaciónEstructuras algoritmicas representación
Estructuras algoritmicas representaciónBenjamin Medina Ramirez
 
Diseño estructurado de algoritmos
Diseño estructurado de algoritmosDiseño estructurado de algoritmos
Diseño estructurado de algoritmosGalo Fabara Vargas
 
Entidades Primitivas Para Algoritmos
Entidades Primitivas Para AlgoritmosEntidades Primitivas Para Algoritmos
Entidades Primitivas Para AlgoritmosMary Sanchez
 
Aplicaciones del Álgebra Lineal
Aplicaciones del Álgebra LinealAplicaciones del Álgebra Lineal
Aplicaciones del Álgebra Linealarojasmatas
 

Destacado (20)

EJEMPLO DE ALGORITMOS ESTRUCTURADOS
EJEMPLO DE ALGORITMOS ESTRUCTURADOS EJEMPLO DE ALGORITMOS ESTRUCTURADOS
EJEMPLO DE ALGORITMOS ESTRUCTURADOS
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacion
 
Informatica II - 2 Metodologia de Solucion de Problemas
Informatica II - 2 Metodologia de Solucion de ProblemasInformatica II - 2 Metodologia de Solucion de Problemas
Informatica II - 2 Metodologia de Solucion de Problemas
 
Clase 3 Unidad 2 Parte 2
Clase 3 Unidad 2 Parte 2Clase 3 Unidad 2 Parte 2
Clase 3 Unidad 2 Parte 2
 
Capitulo 09 Estructura De Un Algoritmo
Capitulo 09 Estructura De Un AlgoritmoCapitulo 09 Estructura De Un Algoritmo
Capitulo 09 Estructura De Un Algoritmo
 
Algorítmos - Conceptos básicos
Algorítmos - Conceptos básicosAlgorítmos - Conceptos básicos
Algorítmos - Conceptos básicos
 
21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltos21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltos
 
Algoritmosconeptosbasicos 1
Algoritmosconeptosbasicos 1Algoritmosconeptosbasicos 1
Algoritmosconeptosbasicos 1
 
Bloque0 Pacie
Bloque0 PacieBloque0 Pacie
Bloque0 Pacie
 
2 Conceptos De Programacion
2 Conceptos De Programacion2 Conceptos De Programacion
2 Conceptos De Programacion
 
Unidad 4 Técnicas para la formulación de algoritmos
Unidad 4 Técnicas para la formulación de algoritmosUnidad 4 Técnicas para la formulación de algoritmos
Unidad 4 Técnicas para la formulación de algoritmos
 
Algoritmos computacionales
Algoritmos computacionalesAlgoritmos computacionales
Algoritmos computacionales
 
Algoritmos y pseudocodigo
Algoritmos y pseudocodigoAlgoritmos y pseudocodigo
Algoritmos y pseudocodigo
 
Heuristico y didactica metodos deductivo e inductivo
Heuristico y didactica metodos deductivo e inductivoHeuristico y didactica metodos deductivo e inductivo
Heuristico y didactica metodos deductivo e inductivo
 
Diseño de Algoritmos
 Diseño de Algoritmos Diseño de Algoritmos
Diseño de Algoritmos
 
Estructuras algoritmicas representación
Estructuras algoritmicas representaciónEstructuras algoritmicas representación
Estructuras algoritmicas representación
 
Diseño estructurado de algoritmos
Diseño estructurado de algoritmosDiseño estructurado de algoritmos
Diseño estructurado de algoritmos
 
Expresiones logicas
Expresiones logicasExpresiones logicas
Expresiones logicas
 
Entidades Primitivas Para Algoritmos
Entidades Primitivas Para AlgoritmosEntidades Primitivas Para Algoritmos
Entidades Primitivas Para Algoritmos
 
Aplicaciones del Álgebra Lineal
Aplicaciones del Álgebra LinealAplicaciones del Álgebra Lineal
Aplicaciones del Álgebra Lineal
 

Similar a Diseño Estructurado de Algoritmos

Algoritmos
AlgoritmosAlgoritmos
Algoritmosnileyna
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmosnileyna
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmosnileyna
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmosnileyna
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmosnileyna
 
9º Algoritmos
9º Algoritmos9º Algoritmos
9º Algoritmosnileyna
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmosnileyna
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujocasdilacol
 
3ra evaluacion, presentacion
3ra evaluacion, presentacion3ra evaluacion, presentacion
3ra evaluacion, presentacionfabiana733179
 
Clase 1 de introduccion a la programacion
Clase 1 de introduccion a la programacionClase 1 de introduccion a la programacion
Clase 1 de introduccion a la programacionjoel210696
 
Conceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programaciónConceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programaciónjusto morales
 
Algoritmos y metodología para la resolución de problemas basada en el computador
Algoritmos y metodología para la resolución de problemas basada en el computadorAlgoritmos y metodología para la resolución de problemas basada en el computador
Algoritmos y metodología para la resolución de problemas basada en el computadorRoibertOnielEstradaL
 
Algoritmos diagrama-de-flujo
Algoritmos diagrama-de-flujoAlgoritmos diagrama-de-flujo
Algoritmos diagrama-de-flujocognos_uie
 

Similar a Diseño Estructurado de Algoritmos (20)

Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
9º Algoritmos
9º Algoritmos9º Algoritmos
9º Algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Clase 1 lógica de programación
Clase 1 lógica de programaciónClase 1 lógica de programación
Clase 1 lógica de programación
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujo
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Clase de programacion
Clase  de  programacionClase  de  programacion
Clase de programacion
 
Bloque 1
Bloque 1Bloque 1
Bloque 1
 
3ra evaluacion, presentacion
3ra evaluacion, presentacion3ra evaluacion, presentacion
3ra evaluacion, presentacion
 
Clase 1 de introduccion a la programacion
Clase 1 de introduccion a la programacionClase 1 de introduccion a la programacion
Clase 1 de introduccion a la programacion
 
01 texto - módulo n° 1 • algoritmos
01 texto - módulo n° 1 • algoritmos01 texto - módulo n° 1 • algoritmos
01 texto - módulo n° 1 • algoritmos
 
Conceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programaciónConceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programación
 
Algoritmos y metodología para la resolución de problemas basada en el computador
Algoritmos y metodología para la resolución de problemas basada en el computadorAlgoritmos y metodología para la resolución de problemas basada en el computador
Algoritmos y metodología para la resolución de problemas basada en el computador
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Algoritmos diagrama-de-flujo
Algoritmos diagrama-de-flujoAlgoritmos diagrama-de-flujo
Algoritmos diagrama-de-flujo
 

Más de Mary Martínez Morales

Más de Mary Martínez Morales (20)

Innovación Tecnológica y Emprendimiento
Innovación Tecnológica y EmprendimientoInnovación Tecnológica y Emprendimiento
Innovación Tecnológica y Emprendimiento
 
Rubrica video
Rubrica videoRubrica video
Rubrica video
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Programa
ProgramaPrograma
Programa
 
Formato inscripcion fomi-2013 - final
Formato inscripcion fomi-2013 - finalFormato inscripcion fomi-2013 - final
Formato inscripcion fomi-2013 - final
 
Proyecto investigacion-sitio web bic 23
Proyecto investigacion-sitio web bic 23Proyecto investigacion-sitio web bic 23
Proyecto investigacion-sitio web bic 23
 
Proyecto de investicacion centro ecoturismo zuzul
Proyecto de investicacion centro ecoturismo zuzulProyecto de investicacion centro ecoturismo zuzul
Proyecto de investicacion centro ecoturismo zuzul
 
Instalar y configurar un curso en línea de informática ii
Instalar y configurar un curso en línea de informática iiInstalar y configurar un curso en línea de informática ii
Instalar y configurar un curso en línea de informática ii
 
Rubrica blog-peeweb(2)
Rubrica blog-peeweb(2)Rubrica blog-peeweb(2)
Rubrica blog-peeweb(2)
 
Formato guia del_instructor_2013
Formato guia del_instructor_2013Formato guia del_instructor_2013
Formato guia del_instructor_2013
 
Sesion2 2013
Sesion2 2013Sesion2 2013
Sesion2 2013
 
Sesion3 2013
Sesion3 2013Sesion3 2013
Sesion3 2013
 
Sesion1 2013
Sesion1 2013Sesion1 2013
Sesion1 2013
 
Ejemplos delimitacion-de-temas
Ejemplos delimitacion-de-temasEjemplos delimitacion-de-temas
Ejemplos delimitacion-de-temas
 
Manual office-2010
Manual office-2010Manual office-2010
Manual office-2010
 
Ejemplo bosquejo monografia
Ejemplo bosquejo monografiaEjemplo bosquejo monografia
Ejemplo bosquejo monografia
 
Ejemplo anteproyecto investigacion
Ejemplo anteproyecto investigacionEjemplo anteproyecto investigacion
Ejemplo anteproyecto investigacion
 
Manual office-2010
Manual office-2010Manual office-2010
Manual office-2010
 
Manual office-2010
Manual office-2010Manual office-2010
Manual office-2010
 
Citasyreferencias
CitasyreferenciasCitasyreferencias
Citasyreferencias
 

Último

Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfromanmillans
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptELENA GALLARDO PAÚLS
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzprofefilete
 
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
 
Movimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en VenezuelaMovimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en Venezuelacocuyelquemao
 
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdfOswaldoGonzalezCruz
 
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
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para eventoDiegoMtsS
 
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
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptxJunkotantik
 
Flores Nacionales de América Latina - Botánica
Flores Nacionales de América Latina - BotánicaFlores Nacionales de América Latina - Botánica
Flores Nacionales de América Latina - BotánicaJuan Carlos Fonseca Mata
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadAlejandrino Halire Ccahuana
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxYeseniaRivera50
 
EXPECTATIVAS vs PERSPECTIVA en la vida.
EXPECTATIVAS vs PERSPECTIVA  en la vida.EXPECTATIVAS vs PERSPECTIVA  en la vida.
EXPECTATIVAS vs PERSPECTIVA en la vida.DaluiMonasterio
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFAROJosé Luis Palma
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxjosetrinidadchavez
 
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
 

Último (20)

Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdf
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
 
Repaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia GeneralRepaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia General
 
Unidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDIUnidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDI
 
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 ...
 
Movimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en VenezuelaMovimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en Venezuela
 
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
 
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
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para evento
 
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
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptx
 
Earth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversaryEarth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversary
 
Flores Nacionales de América Latina - Botánica
Flores Nacionales de América Latina - BotánicaFlores Nacionales de América Latina - Botánica
Flores Nacionales de América Latina - Botánica
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdad
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
 
EXPECTATIVAS vs PERSPECTIVA en la vida.
EXPECTATIVAS vs PERSPECTIVA  en la vida.EXPECTATIVAS vs PERSPECTIVA  en la vida.
EXPECTATIVAS vs PERSPECTIVA en la vida.
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
 
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
 

Diseño Estructurado de Algoritmos

  • 1. SESIÓN 1DISEÑO ESTRUCTURADO DE ALGORITMOS L.I. María de los Ángeles Martínez Morales.
  • 2. TEMARIO Conceptos básicos 1.1. Introducción 1.2. Definición de lenguaje, algoritmo y lenguajes algorítmicos 1.3. Metodología para la solución de problemas por medio de computadoras. 1.4. Entidades primitivas para el diseño de instrucciones. 1.5. Técnicas para la formulación de algoritmos.
  • 3. TEMARIO Estructuras algorítmicas secuenciales 2.1. Asignación 2.2. Entrada 2.3. Salida 2.4. Solución de problemas Rutas algorítmicas condicionales 3.1. Si entonces 3.2. Si entonces sino 3.2. En caso de 3.4. Solución de problemas
  • 4. TEMARIO Estructuras algorítmicas repetitivas 4.1. Mientras hacer 4.2. Hacer mientras 4.3. Hacer para 4.4. Solución de problemas
  • 5. 1. Conceptos básicos INTRODUCCIÓN La escritura de un programa de computadora consiste normalmente en implementar un método de resolución de un problema, que se ha diseñado previamente. Con frecuencia este método es independiente de la computadora utilizada: es igualmente válido para muchas de ellas. En cualquier caso es el método, no el programa, el que debe estudiarse para comprender cómo está siendo abordado el problema.
  • 6. 1. Conceptos básicos El objetivo del diseño estructurado de algoritmos es obtener la estructura modular y los detalles de proceso de un algoritmo. No se trata solamente de desarrollar un programa que “funcione”, sino que también sea fácil de mantener, que mejore su reutilización y se pueda probar y entender fácilmente.
  • 7. 1.2. Definición de lenguaje, algoritmo y lenguajes algorítmicos Un Lenguaje de Programaciónes aquél que es  utilizado para escribir programas de computadoras que puedan ser entendidos por ellas. Estos lenguajes se clasifican en tres grandes categorías  Lenguajes de máquina Lenguajes de bajo nivel Lenguajes de alto nivel
  • 8. 1.2. Definición de lenguaje, algoritmo y lenguajes algorítmicos Un algoritmo establece, de manera genérica e informal, la secuencia de pasos o acciones que resuelve un determinado problema. Los algoritmos constituyen la documentación principal que se necesita para poder iniciar la fase de codificación y, para representarlos, se utiliza, fundamentalmente, dos tipos de notación: pseudocódigo y diagramas de flujo. El diseño de un algoritmo es independiente del lenguaje que después se vaya a utilizar para codificarlo.
  • 9. 1.2. Definición de lenguaje, algoritmo y lenguajes algorítmicos ALGORITMO: Conjunto de instrucciones que especifican la secuencia ordenada de operaciones a realizar para resolver un problema. En otras palabras, un algoritmo es un método o fórmula para la resolución de un problema. Un algoritmo es independiente tanto del lenguaje de programación en que se exprese como del ordenador en el que se ejecute.
  • 10. 1.2. Definición de lenguaje, algoritmo y lenguajes algorítmicos ALGORITMO Un algoritmo es un conjunto ordenado y finito de pasos usados en la solución de un problema o realización de una tarea.
  • 11. CURIOSIDAD: El término algoritmo es muy anterior a la era informática: proviene de Mohammed al-Khowārizmī(apellido que se tradujo al latín empleando la palabra “algoritmus”), matemático persa del siglo IX que enunció paso a paso las reglas para sumar, restar, multiplicar y dividir números decimales.
  • 13. 1.2. Definición de lenguaje, algoritmo y lenguajes algorítmicos Un algoritmo esta compuesto por: La etapa de entrada indica los datos que son necesarios para la solución del problema en cuestión. En la etapa de proceso o procesamiento, es donde se realizan las operaciones que tienen que ver con la solución del problema. La etapa de salida es donde se mostrarán los resultados obtenidos en el procesamiento.
  • 14. Algoritmos Cotidianos Se refiere a todos aquéllos algoritmos que nos ayudan a resolver problemas diarios, y que los hacemos casi sin darnos cuenta de que estamos siguiendo una metodología para resolverlos.
  • 15. 1.2. Definición de lenguaje, algoritmo y lenguajes algorítmicos Los lenguajes algorítmicos nos proporcionan metodologías que permiten representar cualquier problema (o casi cualquiera) para posteriormente expresarlo en un lenguaje de computadora. De lo anterior podemos concluir que, expresando correctamente un problema mediante un algoritmo, podemos representarlo en cualquier lenguaje de programación.
  • 16. 1.2. Definición de lenguaje, algoritmo y lenguajes algorítmicos Los algoritmos pueden describirse utilizando diversos lenguajes. Cada uno de estos lenguajes permiten describir los pasos con mayor o menor detalle. La clasificación de los lenguajes para algoritmos puede enunciarse de la siguiente manera : Lenguaje Natural Lenguaje de Diagramas de flujo Lenguaje Natural de Programación. Lenguaje de Programación de Algoritmos.
  • 17. 1.2. Definición de lenguaje, algoritmo y lenguajes algorítmicos Lenguaje Natural Es aquél que describe en español, para nuestro caso, los pasos a seguir utilizando un vocabulario cotidiano. Se le conoce  como lenguaje  jerga cuando se utilizan términos especializados de una determinada ciencia, profesión o grupo.
  • 18. 1.2. Definición de lenguaje, algoritmo y lenguajes algorítmicos Lenguaje de Diagramas de flujo Es aquél que se vale de diversos símbolos para representar las ideas o acciones a desarrollar. Es útil para organizar las acciones o pasos de un algoritmo pero requiere de etapas posteriores para implementarse en un sistema de cómputo.
  • 19. 1.2. Definición de lenguaje, algoritmo y lenguajes algorítmicos Lenguaje Natural de Programación. Son aquéllos que están orientados a la solución de problemas que se definen de una manera precisa. Generalmente son aplicados para la elaboración de fórmulas o métodos científicos. Tiene las siguientes características :       Evita la ambigüedad (algo confuso que se puede interpretar de varias maneras). Son precisos y bien definidos. Utilizan términos familiares al sentido común. Elimina instrucciones innecesarias.
  • 20. 1.2. Definición de lenguaje, algoritmo y lenguajes algorítmicos Lenguaje de Programación de Algoritmos. Es aquél que se utiliza para introducir en la computadora un algoritmo específico. Se les conoce también como Lenguaje de Programación.
  • 21. 1.3. Metodología para la solución de problemas por medio de computadoras. A fin de resolver un problema utilizando sistemas de cómputo, debe seguirse una serie de pasos que permiten avanzar por etapas bien definidas hacia la solución: Definición de Problema Análisis de los Datos Diseño de la Solución Codificación Prueba y Depuración Documentación Mantenimiento
  • 22. Definición del problema Está dada en sí por el enunciado del problema, el cual debe ser claro y complejo. Es importante que conozcamos exactamente "que se desea obtener al final del proceso" ; mientras esto no se comprenda no puede pasarse a la siguiente etapa.
  • 23. Análisis de los datos Para poder definir con precisión el problema se requiere que las especificaciones de entrada y salida sean descritas con detalle ya que esto es un requisito para lograr una solución eficaz. Una vez que el problema ha sido definido y comprendido, deben analizarse los siguientes aspectos :
  • 24. Análisis de los datos Los resultados esperados. Los datos de entrada disponibles. Herramientas a nuestro alcance para manipular los datos y alcanzar un resultado (fórmulas, tablas, accesorios diversos).
  • 25. Diseño de la solución Una computadora no tiene capacidad para solucionar problemas más que cuando se le proporcionan los sucesivos pasos a realizar, esto se refiere a la obtención de un algoritmo que resuelva adecuadamente el problema. En caso de obtenerse varios algoritmos, seleccionar uno de ellos utilizando criterios ya conocidos. Esta etapa incluye la descripción del algoritmo resultante en un lenguaje natural, de diagrama de flujo o natural de programación. Como puede verse, solo se establece la metodología para alcanzar la solución en forma conceptual, es decir ; sin alcanzar la implementación en el sistema de cómputo.
  • 26. Codificación Se refiere a la obtención de un programa definitivo que pueda ser comprensible para la máquina. Incluye una etapa que se reconoce como compilación. Si la codificación original se realizó en papel, previo a la compilación deberá existir un paso conocido como transcripción.
  • 27. Prueba y depuración Una vez que se ha obtenido el programa ejecutable, este es sometido a prueba a fin de determinar si resuelve o no el problema planteado en forma satisfactoria. Las pruebas que se le aplican son de diversa índole y generalmente dependen del tipo de problema que se está resolviendo. Comúnmente se inicia la prueba de un programa introduciendo datos válidos, inválidos e incongruentes y observando como reacciona en cada ocasión. El proceso de depuración consiste en localizar los errores y corregirlos en caso de que estos existan. Si no existen errores, puede entenderse la depuración como una etapa de refinamiento en la que se ajustan detalles para optimizar el desempeño del programa.
  • 28. Documentación Debido a que el programa resultante en esta etapa se encuentra totalmente depurado (sin errores), se procede a la utilización para resolver problemas del tipo que dio origen a su diseño.   En vista de que esta utilización no podrá ser supervisada en todas las ocasiones por el programador, debe crearse un manual o guía de operación que indique los pasos a seguir para utilizar el programa.
  • 29. Mantenimiento Se refiere a las actualizaciones que deban aplicarse al programa cuando las circunstancias así lo requieran. Este programa deberá ser susceptible de ser modificado para adecuarlo a nuevas condiciones de operación. Cualquier actualización o cambio en el programa deberá reflejarse en su documentación.
  • 30. 1.4. Entidades primitivas para el diseño de instrucciones. Tipos de Datos Operadores y operandos Expresiones
  • 31. Tipos de Datos Un dato se define como la expresión general que describe los objetos con los cuales opera una computadora. Los datos de entrada se transforman por el programa, después de las etapas intermedias, en datos de salida.
  • 32. Tipos de Datos Los datos se clasifican en diversas categorías, según el tipo de máquina o del lenguaje en uso. Generalmente podemos encontrar las siguientes categorías : Numéricos Lógicos Cadenas
  • 33. Datos numéricos Son aquéllos que representan una cantidad o valor determinado. Su representación se lleva a cabo en los formatos ya conocidos (enteros, punto y fracciones decimales si estas existen). Tipo entero (Integer) Tipo Real
  • 34. Tipo de Dato Cadena o Carácter Son los datos que representan información textual (palabras, frases, símbolos, etc). Pueden distinguirse porque son delimitados por apóstrofes o comillas. No representan valor alguno para efectos numéricos. Datos de Tipo Carácter (Char) Datos de Tipo Cadena (String)
  • 35. Tipos de Datos Lógicos Booleano Falso Verdadero Se utiliza para representar las alternativas (si/no) a determinadas condiciones. Por ejemplo, cuando se pide si un valor entero sea primo, la respuesta será verdadera o falsa, según sea.
  • 36. Datos Simples y Compuestos Un dato simple es indivisible (atómico), es decir, no se puede descomponer. Ejemplo 1: Un año es un dato simple.Año...:2006Un año se expresa con un número entero, el cual no se puede descomponer.
  • 37. Datos Simples y Compuestos Un dato compuesto está formado por otros datos.Ejemplo 2: una fecha es un dato compuesto por tres datos simples (día, mes, año).   Fecha:      día...: 30      mes...: 11      año...: 2006
  • 38. Constantes y variables Una Constante es aquélla que no cambia de valor durante la ejecución de un programa (o comprobación de un algoritmo en este  caso).  Se representa en la forma descrita para cada categoría. Las Variables son aquéllas que pueden modificar su valor durante la ejecución de un programa (idem). Su representación se da a través de letras y símbolos generalmente numéricos a los que se les asigna un valor.
  • 39. Operadores y Operandos   OPERADORES Un operador es el símbolo que determina el tipo de operación o relación que habrá de establecerse entre los operandos para alcanzar un resultado.
  • 40. Operadores y Operandos   Los operadores se clasifican en tres grupos: Aritméticos Relacionales Lógicos
  • 41. Operadores Aritméticos Son aquéllos que permiten la realización de cálculos aritméticos. Utilizan operandos numéricos y proporcionan resultados numéricos.
  • 42. Operadores Relacionales Permiten realizar comparaciones de valores de tipo numérico o carácter. Estos operadores sirven para expresar las condiciones en los algoritmos. Proporcionan resultados lógicos.
  • 43. Operadores Lógicos Son aquéllos que permiten la combinación de condiciones para formar una sola expresión lógica. Utilizan operandos lógicos y proporcionan resultados lógicos también.
  • 44. Prioridad de los operadores aritméticos
  • 45. Prioridad de los operadores lógicos y relacionales
  • 46. Asignación Una instrucción de asignación (o simplemente asignación) consiste en asignar el resultado de la evaluación de una expresión a una variable. Ejemplo 1: Dadas las declaraciones   PI = 3.141592   realarea, longitud, radio = 5.78
  • 47. Entrada Una instrucción de entrada (o simplemente entrada) consiste en asignar a una o más variables, uno o más valores (datos) recibidos desde el exterior. Normalmente, los datos son recogidos desde la entrada estándar (el teclado), pero, también existen otros dispositivos de entrada (el ratón, el escáner,...).
  • 48. Entrada leer( <nombre_de_la_variable_1>,         <nombre_de_la_variable_2>,          ...,         <nombre_de_la_variable_n>) leer( <lista_de_variables> )
  • 49. Salida Una instrucción de salida (o simplemente salida) consiste en llevar hacia el exterior los valores (datos) obtenidos de la evaluación de una lista de expresiones. Normalmente, los datos son enviados a la salida estándar (la pantalla), pero, también existen otros dispositivos de salida (la impresora, el plotter,...).
  • 50. Salida escribir( <expresión_1>, ..., <expresión_n> ) escribir( <lista_de_expresiones> )
  • 51. Expresiones Las expresiones son combinaciones de constantes, variables, símbolos de operadores, paréntesis y nombres de funciones especiales. Las mismas ideas son utilizadas en notación matemática tradicional ; por ejemplo : a + b ( b+2)     Aquí los paréntesis indican el orden de cálculo.
  • 52. 1.5. Técnicas para la formulación de algoritmos. Las tres técnicas de formulación de algoritmos más populares son : Diagrama de flujo Pseudocódigo Diagrama estructurado
  • 53. REFERENCIAS CASTILLO, Víctor. Lenguajes algorítmicos. Recuperado el 10 de Julio de 2011 de http://docente.ucol.mx/abolio/tareas/Lenguaje.pdf INSTITUTO TECNOLOGICO DE LA PAZ. Tutorial de diseño estructruturado de algoritmos, recuperado el 10 de Julio de 2011 de http://sistemas.itlp.edu.mx/tutoriales/algoritmos/ RODRÍGUEZ, Sala Jesús. (2003). Introducción a la programación: teoría y práctica. Recuperado el 10 de Julio de 2011 de http://books.google.com.mx/books?id=nLMJsInMyBwC&pg=PA38&dq=introduccion+al+dise%C3%B1o+estructurado+de+algoritmos&hl=es&ei=llMaToORKoLUtQOG_czDDQ&sa=X&oi=book_result&ct=result&resnum=1&ved=0CCgQ6AEwAA#v=onepage&q&f=false UNIVERSIDAD NACIONAL DE COLOMBIA, Diseño estructurado de algoritmos, recuperado el 10 de Julio de 2011 de http://www.virtual.unal.edu.co/cursos/ingenieria/2001839/modulo1/cap_02/leccion_1.htm