1 Fundamentos de programación Organización de una computadora
2 Datos Una computadora procesa datos Los convierte en información significativa Datos >> Computadora >> Información
3 Calculadora Una calculadora efectúa operaciones sobre datos de entrada y produce resultados Las operaciones no están almacenadas El usuario (operador) es quien indica las operaciones Si es programable, es computadora
4 Modelo de von Newmann Programa (conjunto de instrucciones) almacenado en memoria Se ejecutan las instrucciones en secuencia Permite la aplicación de algoritmos
5 Computadora Proporciona la capacidad de: – Aceptar la entrada – Visualizar o presentar la salida – Almacenar la información – Ejecutar operaciones aritméticas o lógicas sobre los datos de entrada o de salida – Monitorizar, controlar y dirigir operaciones globales y de secuencia del sistema
6 Componentes más importantes Procesador (CPU) Unidad Aritmética Lógica Unidad de Control Entrada Salida Memoria Almacenam secundario
7 El procesador Dispositivo que ejecuta la instrucciones del programa También conocido como CPU (no confundir con el gabinete Si el procesador está en un solo chip, se le conoce como microprocesador
8 Datos, algoritmos y lenguajes Conocer las herramientas, anta de pretender usarlas
9 Datos e información Datos – Representación de algún hecho, concepto o entidad real Información – Datos procesados y organizados
10 Sistema Conjunto de componentes interconectados e interactivos que tienen un propósito y una unidad total
11 Resolución de problemas con computadoras Si existe el algoritmo, el problema está CASI resuelto
12 Fases en la resolución de problemas Análisis del problema Diseño del algoritmo Codificación Compilación y ejecución Verificación Depuración Mantenimiento Documentación
13 Análisis El problema se analiza – Comprensión de la naturaleza del problema, bien definido – Especificación de requisitos del cliente, particularmente los datos de entrada y la salida esperada – Se deben conocer los datos involucrados, y eliminar los que no son relevantes – Se debe conocer la información que el cliente espera y su presentación
14 Diseño Se diseña la solución que conducirá a un algoritmo que resuelva el problema Descomponer el problema en subproblemas y estos en sub-sub-problemas, sucesivamente Se debe llegar a problemas simples, cuya solución sea implementable en la computadora A esto se le denomina diseño descendente, también conocido como divide y vencerás
15 Algoritmo La parte intelectual de la resolución del problema. El resto, es talacha
16 Algoritmo Conjunto de tareas o pasos en una cantidad finita que se ejecutan en un orden determinado, y para determinada situación inicial se resuelve el problema en un tiempo finito. Situación inicial >> algoritmo >> solución
17 Características de un algoritmo Correcto (resolver el problema) Eficiente (recursos y tiempo) Claro Flexible (adaptable) Preciso (bien definido el orden de pasos) Bien definido (mismo resultado para cada mismo problema) Finito (debe terminar, en un número finito de pasos) Fiable (proporcionar solución)
18 Representación gráfica de un algoritmo Métodos de representación: – Diagrama de flujo – Diagrama N-S (Nassi-Schneiderman) – Lenguaje de especificación de algoritmos: Pseudocódigo – Lenguaje natural (español) – Fórmulas
19 Diagrama de flujo Se utilizan símbolos (cajas) estándar que representan los pasos del algoritmo Unidos por flechas: líneas de flujo Los símbolos están normalizados por ANSI
20 Diagrama N-S También conocido como diagrama de chaplin Como el diagrama de flujo, pero se omiten líneas de flujo y las cajas son contiguas
21 Pseudocódigo Describe el algoritmo de manera simple Su conversión a código en un lenguaje es simple El desarrollador se concentra en la lógica y estructuras de control, sin pensar en el lenguaje Lo escrito en pseudocódigo se convierte en comentarios del lenguaje
22 Pseudocódigo Calcular el valor de la suma 1+2+3+…+100 Seudocódigo: 1.Establecer Contador a 1 2.Establecer Suma a 0 3.mientras Contador
23 Lenguaje natural Se describen los pasos en simple lenguaje natural En nuestro caso: español
24 Fórmulas Las fórmulas expresan las operaciones necesarias para obtener el resultado a partir de los datos de entrada y algunas constantes
25 Diagramas de Flujo
26 Pseudocódigo