1 / 34

INTRODUCCION A LOS ALGORITMOS

INTRODUCCION A LOS ALGORITMOS. MENU DEL DIA. Fases para el desarrollo de un programa. Partes de un programa. Ejecución de un programa. Anatomía de un programa. Datos y tipos de datos. Tipos de datos primitivos. Expresiones Expresiones aritméticas. Expresiones relacionales.

irisa
Télécharger la présentation

INTRODUCCION A LOS ALGORITMOS

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. INTRODUCCION A LOS ALGORITMOS

  2. MENU DEL DIA • Fases para el desarrollo de un programa. • Partes de un programa. • Ejecución de un programa. • Anatomía de un programa. • Datos y tipos de datos. • Tipos de datos primitivos. • Expresiones • Expresiones aritméticas. • Expresiones relacionales. • Expresiones lógicas. • Prioridad y asociatividad. • Entrada y salida. • Entrada. • Salida. • Sobre el LEA y el ESCRIBA

  3. FASES PARA EL DESARROLLO DE UN PROGRAMA Problema Computadora mata a Flanders Algoritmo Programa C ???????

  4. FASES PARA EL DESARROLLO DE UN PROGRAMA Paso 1. Definición y análisis del programa • Comprensión del problema (que me piden?) • Análisis del problema. • Establecer una estrategia de solución del problema (entradas, salidas, proceso). Computadora mata a Flanders ???????

  5. FASES PARA EL DESARROLLO DE UN PROGRAMA Paso 2. Diseño del algoritmo • Diagrama de flujo. (FreeDFD: http://wiki.freaks-unidos.net/freedfd/index ) • Pseudocódigo. (PseInt: http://pseint.sourceforge.net/ ).

  6. FASES PARA EL DESARROLLO DE UN PROGRAMA Paso 3. Codificación del programa Recordemos, un programa es un conjunto de instrucciones (dadas a la maquina) que producirán la ejecución de determinada tarea. C

  7. FASES PARA EL DESARROLLO DE UN PROGRAMA Paso 4. Depuración • Probar el funcionamiento del programa bajo condiciones reales para buscar errores y corregirlos. • Hacer mas robusto el programa.

  8. FASES PARA EL DESARROLLO DE UN PROGRAMA Paso 5. Documentación • Explicación breve de los diferentes elementos del programa para facilitar la comprensión de su funcionamiento. http://en.wikipedia.org/wiki/Comparison_of_documentation_generators

  9. FASES PARA EL DESARROLLO DE UN PROGRAMA Paso 6. Mantenimiento • Mejoras. • Corrección de nuevos fallas. • Soporte.

  10. PARTES DE UN PROGRAMA ENTRADA SALIDA INSTRUCCIONES

  11. EJECUCION DE UN PROGRAMA 1 2 3 N 1 2 3 N . . . . . . LINEAL (Ejecución secuencial) NO LINEAL (Interrupción mediante instrucciones de bifurcación).

  12. ANATOMIA DE UN PROGRAMA Algoritmo(sumar) Variables: a, b, c: entero INICIO ESCRIBA(“Introduzca el primer numero (entero)”) LEA(a) ESCRIBA(“Introduzca el segundo numero (entero)”) LEA(b) c  a + b ESCRIBA(“La suma es: ”,c) FIN_INICIO Fin(sumar) Declaración de variables Instrucciones Algoritmo(Nombre_algoritmo) Declaracion_de_variables INICIO INSTRUCCIÓN_1 INSTRUCCIÓN_2 INSTRUCCIÓN_3 . . . INSTRUCCIÓN_N FIN_INICIO Fin(Nombre_algoritmo)

  13. ANATOMIA DE UN PROGRAMA Algoritmo(Nombre_algoritmo) Declaracion_de_variables INICIO INSTRUCCIÓN_1 INSTRUCCIÓN_2 INSTRUCCIÓN_3 . . . INSTRUCCIÓN_N FIN_INICIO Fin(Nombre_algoritmo) Operador de asignación (,=) variable  variable, constante, expresión b  a c  f d  ñ b  3 c  -9.8 d  “Nerón Navarrete” b  a + 4*g c  c + 1 z  (x+y)/w + v^3 variable  variable variable  constante variable  expresión

  14. DATOS Y TIPOS DE DATOS Dato Expresión general la cual describe los objetos con los cuales opera la computadoras. NO LINEAL (Interrupción mediante instrucciones de bifurcación). Compuestos Tipo Los distintos tipos de datos se representan en forma diferente en la computadora Simples 10010100111 . . . 1001 Tipo de dato (Abstracción) Representación en la maquina Lenguajes de alto nivel

  15. TIPOS DE DATOS PRIMITIVOS

  16. TIPOS DE DATOS PRIMITIVOS • Numéricos (Enteros, reales). • Lógicos (booleanos). • Alfanuméricos (Carácter, cadenas). Tipos de datos simples Enteros: Representan los números enteros, no poseen parte decimal, ejemplo: 5, 6, -15, -100,1000,… Reales: Representan números reales, poseen parte decimal, ejemplo: 0.08, 3.14, 3.7452, -8.003, 3.0. Alfanuméricos: Conjunto finito y ordenado que el computador reconoce Booleanos: Aquellos que pueden tomar dos posibles valores; falso (false) o verdadero(true).

  17. EXPRESIONES Las expresiones son combinaciones de constantes, variables, símbolos de operación, paréntesis y nombres de funciones especiales Variables Constantes Operadores Función raíz cuadrada

  18. EXPRESIONES ARITMETICAS Las expresionesaritméticas son análogas a las formulas matemáticas. Las variables y constantes son numéricas (real o entera) y las operaciones son las aritméticas.

  19. REGLAS DE PRIORIDAD Y ASOCIATIVIDAD • Cuando se tiene una expresión con dos o mas operandos, las operaciones se llevan a cabo siguiendo un orden. Las reglas que dictan que operaciones se hacen primero y que operaciones se hacen de ultimo se conocen como reglas de prioridad o precedencia, y son: • Las operaciones que están encerradas entre paréntesis se evalúan primero. Si existen paréntesis anidados (unos dentro de otros), las expresiones mas internas se evalúan primero. • Las operaciones aritméticas dentro de una expresión suelen seguir el siguiente orden de prioridad. Cuando coinciden varios operadores de igual prioridad en una expresión, hablamos de asociatividad. La asociatividad dicta el orden en que se ejecutan las operaciones de igual prioridad. D: Derecha I: Izquierda

  20. REGLAS DE PRIORIDAD Y ASOCIATIVIDAD 4/2*3/6 + 6/2/1/5^2/4*2 -4*7 + 2^3/4 - 5 4/2*3/6 + 6/2/1/25/4*2 -4*7 + 8/4 - 5 8*3/6 + 6/2/1/25/4*2 -28 + 8/4 - 5 24/6 + 6/2/1/25/4*2 -28 + 2 - 5 4 + 6/2/1/25/4*2 -26 - 5 4 + 3/1/25/4*2 -31 4 + 3/25/4*2 4 + 0.12/4*2 4 + 0.03*2 4 + 0.06 4.06

  21. EXPRESIONES RELACIONALES Las expresionesrelacionales son operaciones que dan como resultado dos posibles valores, falso (F)o verdadero (V), estaspermiten realizar comparaciones de valores de tipo numérico o carácter. El formato general para este tipo de operaciones es: expresion1 OPERADOR_RELACIONAL expresion2

  22. EXPRESIONES LOGICAS Las expresioneslógicas son operaciones que dan como resultado dos posibles valores, falso (F)o verdadero (V). Los operadores logicos basicos son NOT (no), AND (y) y OR (o).

  23. PRIORIDAD DE LOS OPERADORES LOGICOS Y RELACIONALES Al igual que los operadores aritméticos, los operadores lógicos y relacionales presentan un orden de prioridad, la siguiente tabla resume este orden:

  24. PRIORIDAD Y ASOCIATIVIDAD La siguiente tabla resume la prioridad y asociatividad de todos los tipos de operadores anteriormente vistos

  25. ENTRADA Y SALIDA Las instrucciones de entrada y salida permiten interactuar con el programa. Instrucciones de entrada (LEA) Instrucciones de salida (ESCRIBA)

  26. SALIDA Permite mostrar en pantalla los valores almacenados en variables o valores constantes asociados a mensajes. ESCRIBA(‘cadena1’,…,’cadenaN’,var1,var2,…,varN); Variables Constantes Lo que se encuentra entre comillas sencillas (‘’) es constante, lo que no se encuentra entre comillas es variable. Ejemplo: Supóngase que se tienen las variables enteras: a=3, b = 8 y c = 11. ESCRIBA(‘a + b = ’,a,’ + ’,b,’ = ’,c)

  27. ENTRADA Permite asignar valores a variables desde un dispositivo de entrada como el teclado. LEA(var1,var2,…,varN); Variables Ejemplo: Supóngase que se tiene la variable n y que se usa una instruccion lea para asignarle a esta un nuevo valor, la siguiente figura muestra el funcionamiento de dicha instrucción: LEA(n)

  28. SOBRE EL LEA Y EL ESCRIBA Cuando se invoca la instrucción LEA, el programa se queda esperando hasta que el usuario digite el valor a ingresar y presione la letra entre para continuar. Generalmente antes de una instrucción LEA hay una instrucción ESCRIBA . ESCRIBA(‘Digite el nombre: ’’,c) LEA(nom) ESCRIBA(‘Meta la edad y el sexo (F: Femenino, M: Masculino) LEA(edad, sexo) ESCRIBA(nom,‘ usted tiene ’,edad,‘ años.’)

  29. FUNCIONES INTERNAS Las operaciones que se requieren en los programas exigen en numerosas ocasiones, además de las operaciones aritméticas básicas, un numero determinado de operadores especiales que se llaman funciones internas, incorporadas o internas.

  30. FUNCIONES INTERNAS Las funciones aceptan argumentos reales o enteros y sus resultados dependen de la tarea que realice la función.

  31. MAS CARRETA

  32. BIBLIOGRAFIA

  33. BIBLIOGRAFIA Titulo: Lógica de Programación. Autor: Efraín M. Oviedo. Editorial: ECOE Ediciones. Fecha de publicación: 11/20/2008 ISBN: 9586483088. OLC: http://ingenieria.udea.edu.co/~eoviedo/ Titulo: Fundamentos de Programación. Autor: Luis Joyanes Aguilar. Editorial: ECOE Ediciones. Fecha de publicación: 27/05/2008 ISBN: 8448161114 OLC: http://www.mhe.es/joyanes

  34. FIN DE LA CLASE

More Related