Fundamentos de programación
Organización de una computadora
Datos
• Una computadora procesa datos• Los convierte en información significativa• Datos >> Computadora >> Información
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
Modelo de von Newmann
• Programa (conjunto de instrucciones) almacenado en memoria
• Se ejecutan las instrucciones en secuencia• Permite la aplicación de algoritmos
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
Componentes más importantes
Procesador (CPU)Procesador (CPU)
Unidad Aritmética Lógica
Unidad Aritmética Lógica
Unidad de ControlUnidad de ControlEntradaEntrada SalidaSalida
MemoriaMemoria Almacenam secundarioAlmacenam secundario
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
Datos, algoritmos y lenguajes
Conocer las herramientas, anta de pretender usarlas
Datos e información
• Datos– Representación de algún hecho, concepto o
entidad real
• Información– Datos procesados y organizados
Sistema
• Conjunto de componentes interconectados e interactivos que tienen un propósito y una unidad total
Resolución de problemas con computadoras
Si existe el algoritmo, el problema está CASI resuelto
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
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
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
Algoritmo
La parte intelectual de la resolución del problema.
El resto, es talacha
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
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)
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
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
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
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
Pseudocódigo
Calcular el valor de la suma 1+2+3+…+100Seudocódigo:1. Establecer Contador a 12. Establecer Suma a 03. mientras Contador <= 100 hacer
Sumar Contador a SumaIncrementar Contador en 1fin-mientras
4. Visualizar Suma
Lenguaje natural
• Se describen los pasos en simple lenguaje natural
• En nuestro caso: español
Fórmulas
• Las fórmulas expresan las operaciones necesarias para obtener el resultado a partir de los datos de entrada y algunas constantes
Diagramas de Flujo
Pseudocódigo
Top Related