La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

UNIDAD I LÓGICA COMPUTACIONAL ¿QUÉ ES LA LÓGICA COMPUTACIONAL?

Presentaciones similares


Presentación del tema: "UNIDAD I LÓGICA COMPUTACIONAL ¿QUÉ ES LA LÓGICA COMPUTACIONAL?"— Transcripción de la presentación:

1

2

3 UNIDAD I LÓGICA COMPUTACIONAL

4

5 ¿QUÉ ES LA LÓGICA COMPUTACIONAL?

6 DEFINICIÓN La lógica computacional es una disciplina que estudia la aplicación de la lógica clásica formal para la representación computacional de argumentos, las técnicas de deducción automática y asistida por computadora; sus fundamentos relacionados con validez y completes de sistemas de proposiciones; y las aplicaciones de esas técnicas a las diferentes áreas de las ciencias computacionales en todas las etapas de desarrollo de software, es decir, en la especificación, diseño, construcción y verificación formal de programas. En este objetivo concurre junto con la teoría de la computación y el análisis de algoritmos.

7 EN POCAS PALABRAS LO QUE TRATAREMOS EN ESTA MATERIA ES PROGRAMACIÓN; PERO… ¿QUÉ ES LA PROGRAMACIÓN?

8 DEFINICIÓN

9

10 Y… ¿QUÉ ES UN PROGRAMA Y QUÉ HACE EL PROGRAMADOR?

11 DEFINICIONES PROGRAMA Conjunto de instrucciones de acuerdo con un formato llamado lenguaje que permite da instrucciones a la computadora para que las realice en forma automática, convirtiendo datos o valores en información importante para tomar decisiones. Conjunto de instrucciones que tienen como propósito generar los resultados o salidas deseadas por el usuario de la computadora a partir de la realización de una serie de operaciones sobre un conjunto de datos proporcionado o entradas. Conjunto de instrucciones que al ser ejecutadas realizan una tarea específica. Es la secuencia de instrucciones que indica las acciones que ha de ejecutar la computadora.

12 Para que exista un programa se requiere del Programador.

13 EL PROGRAMA DEBE CUMPLIR UN CICLO DE DESARROLLO

14 CICLO DE DESARROLLO Planeación: Consiste en entender el problema y establecer soluciones. Diseño: Se crea la interfaz mediante la cual el usuario interactúa con la aplicación. Programación: Se personaliza la función de los controles, asociando instrucciones.

15 PARA PODER REALIZAR TODO LO ANTERIOR SE UTILIZAN ALGUNOS LENGUAJES DE PROGRAMACIÓN

16 LENGUAJES DE PROGRAMACIÓN BAJO NIVEL O CÓDIGO MÁQUINA Conjunto de Ceros y Unos, es decir señales binarias que, por ejemplo, un procesador podrá entender a una alta velocidad. Ejemplo: Pascal, Cobol, C, C++ y Java. ALTO NIVEL Son un conjunto de palabras u órdenes que poseen una determinada sintaxis, es decir, una norma predefinida para escribir un programa. Ejemplo: Visual Basic

17 LENGUAJES DE PROGRAMACIÓN Pascal: Fue desarrollado por Niklaus Wirth y el grupo de Zurich a principios de los años 70. Este lenguaje es muy apropiado para la enseñanza de la programación, puesto que su sintaxis es muy simple y es un lenguaje muy estructurado, lo que facilita la lectura e interpretación de los programas. Cobol: Es un lenguaje de programación muy portable entre diferentes sistemas operativos, orientado a la gestión de datos. Sus usos más comunes son el desarrollo de software en las áreas administrativas y contables. C: Es un lenguaje de programación estructurado y muy portable, se ha empleado en el desarrollo de sistemas operativos, estructuras de datos, programas científicos, aplicaciones gráficas, análisis numérico, etc.

18 LENGUAJES DE PROGRAMACIÓN C++: Este lenguaje es una extensión del C, es decir, incluye algunas mejoras y características que el C clásico no posee. Se emplea en el desarrollo de aplicaciones complejas y a gran escala, tanto en el ámbito académico como en el industrial. JAVA: Los inicios se remontan a los años 70 pero fue a mediados de los años 90 que Sun Microsystems le dio el aspecto que tiene hoy. Desde un comienzo Java fue diseñado como un Lenguaje Orientado a Objetos. Se puede ejecutar en entornos heterogéneos, en diferentes tipos de computadoras, con cualquier tipo de sistema operativo o puede interactuar con otras aplicaciones independientes. La interactividad, la integración de sonidos e imágenes en una página Web son características de este lenguaje.

19 TAMBIÉN UTILIZAREMOS DIFERENTES TIPOS DE DATOS, VARIABLES, OPERADORES ARITMÉTICOS, OPERADORES LÓGICOS, OPERADORES RELACIONALES Y COMANDOS

20 TIPOS DE DATOS TIPO DE DATOTAMAÑORANGO Integer (Entero)2 bytes-32,768 a 32,767 Long Integer (Entero largo)4 bytes-2,147, a 2,147, Float (Flotante-Decimales)8 bytes-1,80e308 a 1,80e308 Char (cadena)1 carácter/byte 2 billones de caracteres Boolean (Boleano)2 bytesTrue o False Date8 bytes1 de enero de 100 a 31 de diciembre, 9999

21 VARIABLES Son las literales que se ocupan durante la ejecución del programa y pueden tener diferentes valores. Es una ubicación de almacenamiento temporal de información a la que se le asigna un nombre nemotécnico y que guarda un tipo de dato específico. Como su nombre lo indica, toman diferentes valores durante la ejecución del programa.

22 OPERADORES Operador: Es un símbolo aritmético, lógico, aritmético/lógico o relacional que identifica el tipo de operación a realizar. Un operador por sí solo es inservible pero en combinación con variables, constantes o números genera un resultado; a esta combinación se le denomina instrucción o fórmula.

23 OPERADORES ARITMÉTICOS OperadorOperación matemática +Suma -Resta *Multiplicación /División \División entera ModResiduo de la división (Módulo) ^Potenciación &Concatenación

24 OPERADORES LÓGICOS OperadorDescripción AndConjunción (y) OrDisyunción (o) NotNegación (No)

25 OPERADORES RELACIONALES OperadorDescripción =Igualdad <>Diferencia Mayor que <=Menor o igual que >=Mayor o igual que

26 ACTIVIDAD Realizar un Organizador Gráfico del tema expuesto en su cuaderno. Realizar el Organizador Gráfico a computadora en el programa que más guste y anéxelo al Portafolio de Evidencias.

27 DIAGRAMA IPO

28 ¿QUÉ ES UN DIAGRAMA IPO?

29 DEFINICIÓN IPO debe su nombre a las siglas en inglés, INPUT- PROCESS-OUTPUT; en castellano ENTRADA-PROCESO- SALIDA. Es, por mucho, la más simple y práctica forma para planear la programación desarrollada, ya que el término de complejidad no significa necesariamente superioridad. La manera en que funciona es realmente clara, todo lo que hay que hacer es comenzar con un plan básico. Todos los programas tienen algún grado de entrada, algún grado de procesamiento de entrada y algún tipo de salida, que puede ser una pantalla, una impresora, otro programa, etc.

30 ENTRADA Incluye 3 tipos: 1. Leer datos desde un archivo de configuración. 2. Pedirle al usuario el ingreso de algún dato. 3. Leer datos que ingresan desde un escáner, una cámara o cualquier otro dispositivo de entrada conectado al sistema. PROCESO Involucra todo aquello que se hace para manipular o alterar los datos de entrada recibidos (por ejemplo, ordenarlos, operarlos matemáticamente, etc.). Esto es, por lo general, la mayor parte del programa. SALIDA Es la parte inversa de la entrada. Podemos grabar la configuración actual, mostrar al usuario algún mensaje, imprimir algo, enviar los datos al disco o a la entrada de otro programa.

31 ACTIVIDAD Realizar un Organizador Gráfico en su cuaderno del tema tratado anteriormente. Realizar el Organizador Gráfico en la computadora en el programa que más guste y anéxelo a su Portafolio de Evidencias. Resuelva los ejercicios en su cuaderno y posteriormente páselos a computadora para anexarlos en su portafolio de evidencias.

32 ALGORITMOS

33

34 ANTECEDENTES La palabra Algoritmo se deriva del nombre latinizado del gran matemático árabe Mohamed Ibn Al Kow Rizmi ( ), el cual escribió entre los años 800 y 825 su obra Quitad Al Mugabala, un tratado sobre manipulación de números y ecuaciones donde se recogía el sistema de numeración hindú y el concepto del cero. También alcanzó gran reputación por el enunciado de las reglas para sumar, restar, multiplicar y dividir números decimales. Junto con Euclídes el gran matemático griego (siglo IV a. C.) que inventó un método para encontrar el máximo común divisor de los números, se les considera los padres de la algoritmia (ciencia que trata de los algoritmos). Fue Fibonacci quien tradujo la obra al latín e inició con la palabra: Algoritmi Dicit.

35 DEFINICIÓN Es una serie de operaciones detalladas y no ambiguas, a ejecutar paso a paso, y que conducen a la resolución de un problema. Es un conjunto de reglas para resolver una cierta clase de problema o una forma de describir la solución de un problema. Conjunto de pasos que nos permite obtener la solución a un problema.

36 EXPRESIÓN GRÁFICA Con símbolos, utilizando diagramas de flujo. NO GRÁFICA Describiendo las operaciones que llevará a cabo, utilizando un pseudocódigo. CLASIFICACIÓNDETERMINISTAS En cada paso del algoritmo se determina, de forma única, el siguiente paso. NO DETERMINISTAS Debe decidir en cada paso de la ejecución entre varias alternativas y agotarlas, todas antes de encontrar la solución.

37 CARACTERÍSTICAS FINITO El algoritmo debe acabar tras un número finito de pasos. DEFINIDO El algoritmo debe definirse de forma precisa para cada paso, es decir, hay que vitar toda ambigüedad al definir cada paso, de modo que si se sigue dos veces, se debe obtener el mismo resultado cada vez. PRECISO Todas las operaciones que el algoritmo realizará deben ser lo suficientemente básicas, de modo que puedan, en un principio, ser llevadas a cabo en forma exacta, y en un tiempo finito, por una persona usando papel y lápiz.

38 ACTIVIDAD Investigar las biografías de Euclídes y Fibonacci en su cuaderno. Realizar un Organizador Gráfico en su cuaderno del tema tratado. Realizar el mismo Organizador Gráfico en la computadora con el programa que más guste y anéxelo al Portafolio de Evidencias. Resuelva los ejercicios en su cuaderno y posteriormente páselos a computadora para anexarlos en su portafolio de evidencias.

39 ACTIVIDAD Realizar una pequeña investigación del tema Metodologías para la construcción de programas en su cuaderno. Realizar un Organizador Gráfico en la computadora de la información investigada y anexarlo al Portafolio de Evidencias.

40 PROGRAMACIÓN LINEAL

41 COMENCEMOS CON LA PROGRAMACIÓN Y LA PRIMERA QUE ESTUDIAREMOS SERÁ LA PROGRAMACIÓN LINEAL

42 PROGRAMACIÓN LINEAL DEFINICIÓN Técnica matemática y de investigación de operaciones que se utiliza en la planificación administrativa y económica para maximizar las funciones lineales de un gran número de variables sujetas a determinadas restricciones.

43 CARACTERÍSTICASCORRECTO/FIEL Producir resultados requeridos. LEGIBLE Debe ser entendido por cualquier programador, que permita fáciles modificaciones. MODIFICABLE El diseño nunca es definitivo y por ello su estructura debe permitir modificaciones. DEPURABLE Debe ser fácil la localización y corrección de errores.

44

45 DIAGRAMA DE FLUJO DEFINICIÓN Es una de las técnicas de representación de algoritmos más antigua y, a la vez, más utilizada, aunque su empleo ha disminuido considerablemente, sobre todo desde la aparición de lenguajes de programación estructurados. Utiliza los símbolos (cajas) estándar que tienen los pasos escritos en cajas unidas por flechas, denominadas líneas de flujo, que indican la secuencia en que se debe ejecutar.

46 SIMBOLOGÍA Desde que surgieron los diagramas de flujo se inventaron diversas simbologías. Gane y Sarsons (1983) sintetizan una metodología para el estudio se los sistemas, utilizando cuatro símbolos básicos: ENTE EXTERNO PROCESO ARCHIVO FLUJO DE INFORMACIÓN

47 SIMBOLOGÍA Actualmente, la simbología se ha ido estandarizando y dentro de los símbolos más comunes podemos mencionar los siguientes: Proceso Terminal Decisión Conector Proceso predeterminado Proceso manual Entrada / Salida Flujo de información Pantalla Anotación

48 RECOMENDACIONES PARA EL DISEÑO DE DIAGRAMAS DE FLUJO 1. Se debe usar solamente líneas de flujo horizontales o verticales. 2. Se debe evitar el cruce de líneas utilizando conectores. 3. Se debe usar conectores sólo cuando sea necesario. 4. No deben quedar líneas de flujo sin conectar. 5. Se debe trazar los símbolos de manera que se puedan leer de arriba hacia abajo y de izquierda a derecha. 6. Todo texto incluido dentro de un símbolo, deberá ser escrito de manera clara y concisa.

49 ACTIVIDAD Realizar un Organizador Gráfico del tema tratado en su cuaderno. Realizar el mismo Organizador Gráfico a computadora en el programa que gusten y anéxelo a su Portafolio de evidencias. Resuelva los ejercicios en su cuaderno y posteriormente páselos a computadora para anexarlos en su portafolio de evidencias.

50 PROGRAMACIÓN ESTRUCTURADA

51

52 DEFINICIÓN Técnica de construcción top- down (Arriba-Abajo) de programas que utilizan al máximo los recursos del lenguaje, limita el conjunto de estructuras aplicables a leer y presenta una serie de reglas que coordinan adecuadamente el desarrollo de las diferentes frases de la programación. Edgar W. Dijkstra es considerado el padre de la Programación Estructurada.

53 TÉCNICA DESCENDENTE (top-down) DEFINICIÓN Consiste en establecer una serie de niveles de menor a mayor complejidad que den solución al problema.

54 MÓDULO DEFINICIÓN Constituido por una o varias instrucciones físicamente contiguas y lógicamente encadenadas, las cuales se pueden referenciar mediante un nombre y pueden ser llamadas desde diferentes puntos del programa. Puede ser: Un programa, una función o una subrutina (procedimiento). CARACTERÍSTICAS Máxima cohesión. Mínimo acoplamiento. Descripción: Funciones y objetivos. Rendimiento: Realizar el proceso aprovechando al máximo todos los recursos con los que se dispone. Diseño: Comprueba la estructura del módulo, de los datos y la comunicación. TIPOS Módulos tipo raíz, director o principal. Módulos tipo subraíz. Módulos de entrad (captura de datos). Módulos de variación de entradas. Módulos de proceso. Módulos de creación y formatos de salida.

55 DIAGRAMA DE ÁRBOL

56 DEFINICIÓN Figura para definir el espacio muestral de experimentos aleatorios de pasos múltiples.

57 ACTIVIDAD Resuelva los ejercicios en su cuaderno y posteriormente páselos a computadora para anexarlos en su portafolio de evidencias.

58 ESTRUCTURAS DE CONTROL

59

60 TEOREMA DE LA ESTRUCTURA Bohm y Jacopini demostraron que cualquier problema con un solo punto de entrada y un punto de salida puede resolverse con tres únicos tipos de estructuras de control.

61 ESTRUCTURAS BÁSICAS DE CONTROL ESTRUCTURA SECUENCIAL: Ejecuta las acciones sucesivamente unas a continuación de otras sin posibilidad de omitir ninguna. ESTRUCTURA ALTERNATIVA (Condicional): Únicamente se realiza una alternativa dependiendo del valor de una determinada condición o predicado. ESTRUCTURAS REPETITIVAS: Son aquellas en las que las acciones se ejecutan un número determinado de veces y dependen de un valor predefinido o el cumplimiento de una determinada condición.

62 ESTRUCTURA SECUENCIAL

63 ESTRUCTURA ALTERNATIVA ALTERNATIVA SIMPLE La existencia o cumplimiento de la condición implica la ruptura de la secuencia y la ejecución de una determinada acción. ALTERNATIVA DOBLE Permite la elección entre dos acciones o tratamientos en función de que se cumpla o no determinada condición. ALTERNATIVA MÚLTIPLE Se adoptan cuando la condición puede tomar n valores enteros: 1, 2, 3, … n.

64 ESTRUCTURA ALTERNATIVA SIMPLE

65 ESTRUCTURA ALTERNATIVA DOBLE SI NO

66 ESTRUCTURA ALTERNATIVA MÚLTIPLE

67 ESTRUCTURAS REPETITIVAS HACER MIENTRAS DO_WHILE Determina la repetición de un grupo de instrucciones mientras la condición se cumpla inicialmente. REPETIR HASTA DO_UNTIL Estructura en la que el número de iteraciones o repeticiones del grupo de instrucciones se ejecuta hasta que la condición deje de cumplirse. Esta condición se cumple al final. DESDE_HASTA FOR_TO Es aquella que se repite un número fijo de veces.

68 ESTRUCTURA WHILE_DO SI NO

69 ESTRUCTURA DO_UNTIL INICIO ENTRADA DE DATOS PROCESO CONDI CIÓN IMPRIMIR FIN SI NO

70 DEFINICIÓN DE PSEUDOCÓDIGO Pseudo o Seudo significa falso, imitación y código se refiere a las instrucciones escritas en un lenguaje de programación; pseudocódigo no es realmente un código sino una imitación y una versión abreviada de instrucciones reales para las computadoras.

71 ACTIVIDAD Resuelva los ejercicios en su cuaderno y posteriormente páselos a la computadora y anéxelos a su portafolio de evidencias.

72 ACTIVIDAD Investigue el tema Programación Orientada a Objetos (POO), realizando un Organizador Gráfico en la computadora y anéxelo a su Portafolio de Evidencias. Temas a investigar: Fundamentos. Objetos y clases. Métodos. Propiedades: Herencia Paso de mensajes Encapsulamiento Polimorfismo


Descargar ppt "UNIDAD I LÓGICA COMPUTACIONAL ¿QUÉ ES LA LÓGICA COMPUTACIONAL?"

Presentaciones similares


Anuncios Google