02 - Introduccion A La Programacion.
02 - Introduccion A La Programacion.
Ingeniería Electromecánica
________________________________________________________________________________
INTRODUCCION A LA PROGRAMACIÓN
1. Un lenguaje para transmitir a la máquina las órdenes que se le quieren dar; esto es, el
lenguaje de programación y una manera de pensar y concebir dar órdenes a la computadora.
Para ejecutar lo que el usuario desea hacer en su computadora, o bien para resolver un problema
específico, este precisa buscar un software que realice o ejecute con exactitud la tarea que se ha
planteado o elaborar y desarrollar (escribir) un programa que la realice. El trabajo de elaboración de
un programa se denomina “programación”. Pero la programación no es solo el trabajo de escritura
del código, sino todo un conjunto de tareas que se deben cumplir, a fin de que el código que se
escribió resulte correcto y robusto, y cumpla con el objetivo o los objetivos para los que fue creado.
• Conocer las herramientas, los formalismos y los métodos para transformar un problema en
un programa escrito, un lenguaje (que no será el lenguaje máquina), y para que dicho
programa pueda ser transformado en un código ejecutable.
1
Programación en Computación
Ingeniería Electromecánica
________________________________________________________________________________
Algoritmo
Un algoritmo constituye una lista bien definida, ordenada y finita de operaciones, que permite
encontrar la solución a un problema determinado. Dado un estado inicial y una entrada, es a través
de pasos sucesivos y bien definidos que se llega a un estado final, en el que se obtiene una solución
(si hay varias) o la solución (si es única).
Ejemplo
Problema: Gestionar la lista de compras que una empresa realiza durante un mes.
Solución
Para resolver este problema de gestión muy general, se cuenta con las herramientas que se utilizan
en otros problemas que ya tienen una resolución en la empresa (por ejemplo, un programa en Java
con los datos en una base de datos).
• Usar la base de datos de trabajo para guardar, también en esta, la lista de productos que se
requiere comprar.
• Guardar una lista en entradas que se actualiza cada vez que se captura o se incluye un nuevo
producto que la empresa necesita, y que se borra o elimina al momento que el producto ya
está abastecido, y en salidas, cada vez que algún empleado necesite una impresión de dicha
lista.
2
Programación en Computación
Ingeniería Electromecánica
________________________________________________________________________________
• Lenguaje natural (a veces, este no resulta muy claro, pero es muy útil para problemas
simples)
• Pseudocódigo
• Diagramas de flujo
• Programas
El uso de algún elemento de la lista anterior para la expresión de un algoritmo, se hace según el
nivel de descripción de dicho algoritmo. Es evidente que el lenguaje natural es de mayor utilidad
para transmitir las ideas del algoritmo. Al contrario, un programa es difícil de entender por simple
lectura, aun por una persona que conoce el lenguaje del programa, e imposible para aquellas que no
lo conocen.
Con base en el ejemplo anterior, se puede afirmar que la parte de solución expresada en lenguaje
natural tiene algunas ambigüedades para el usuario que no es el programador; por ejemplo, ¿qué
significa la expresión “de pasos sucesivos de diálogo con el usuario”? Aunque, en ocasiones,
también presenta ambigüedades hasta para el propio programador;
por ejemplo, ¿cuáles son “los datos en una base de datos”?, ¿una base de datos es relacional o de
otro modelo?, ¿cuál interfaz?, ¿cómo se manejan las lecturas/escritura en dicha base de datos?
• La primera ambigüedad (“pasos sucesivos”) se debe expresar lo más detallada posible por el
destinatario del programa (el usuario).
3
Programación en Computación
Ingeniería Electromecánica
________________________________________________________________________________
1. Descripción de alto nivel. El primer paso consiste en la descripción del problema, se explica
el algoritmo de manera verbal, posiblemente con ilustraciones, pero omitiendo detalles.
2. Descripción formal. En este nivel se usa un pseudocódigo o diagrama de flujo para describir
la secuencia de pasos que conducen a la solución.
Para llegar a la implementación, primero se deben tener descripciones de alto nivel o formalmente
explícitas, sobre todo cuando el trabajo de desarrollo de un algoritmo se hace en grupo.
1. Definición. En esta etapa se especifica el propósito del algoritmo y se ofrece una definición
clara del problema por resolver. Además, aquí también se establece lo que se pretende lograr
con su solución.
4
Programación en Computación
Ingeniería Electromecánica
________________________________________________________________________________
3. Diseño. Aquí es donde se plasma la solución del problema. Con ese fin, se emplea una
herramienta de diseño, que consiste en el diagrama de flujo y el pseudocódigo.
Un programa informático se define como un conjunto de instrucciones que, una vez ejecutado,
realiza una o varias tareas en una computadora. De esta forma, sin programas, una computadora no
puede realizar las actividades para las que fue diseñada y creada.
El conjunto general de programas que posee una computadora se denomina software, término que
se utiliza para definir al equipamiento o soporte lógico de una computadora.
Un lenguaje de programación es un caso particular del lenguaje informático; este último permite
hacer programas, pero también describir datos, configuraciones físicas y protocolos de
comunicación entre equipos y programas.