Introducción a la programación
Se pueden
utilizar muchos lenguajes para programar una computadora. El más básico es el lenguaje de máquina, una colección de instrucciones
muy detallada que controla la circuitería interna de la máquina. Este es el
dialecto natural de la máquina. Muy pocos programas se escriben actualmente en lenguaje de maquina por dos razones importantes:
primero, porque el lenguaje de maquina es muy incómodo para trabajar y segundo porque
la mayoría de las maquinas se pide programar en diversos tipos de lenguajes,
que son lenguajes de alto nivel, cuyas instrucciones son más compatibles con
los lenguajes y la forma de pensar humanos como lo es el lenguaje c que además es de propósito general.
Debido a
que los programas diseñados en este lenguaje se pueden ejecutar en cualquier máquina,
casi sin modificaciones. Por tanto el uso del lenguaje de alto nivel ofrece
tres ventajas importantes, sencillez, uniformidad y potabilidad.
1.1.
Lenguaje de programación: Sistema de símbolos y reglas que permite la construcción de programas con los que la computadora puede operar así como resolver problemas de manera eficaz.
Estos
contienen un conjunto de instrucciones que nos permiten realizar operaciones de entrada / salida, calculo, manipulación de
textos, lógica / comparación y almacenamiento / recuperación.
Los
lenguajes de programación se clasifican en:
·
Lenguaje Máquina: Son aquellos cuyas instrucciones son directamente entendibles por
la computadora y no necesitan traducción posterior para que la CPU pueda comprender y ejecutar el programa. Las instrucciones en lenguaje maquina se expresan
en términos de la unidad de memoria más pequeña el bit (dígito binario 0 ó 1).
·
Lenguaje de Bajo Nivel (Ensamblador): En este lenguaje las
instrucciones se escriben en códigos alfabéticos conocidos como mnemotécnicos
para las operaciones y direcciones simbólicas.
·
Lenguaje de Alto Nivel: Los lenguajes de programación de alto nivel (BASIC, pascal, cobol, fortran, etc.) son aquellos en los que las
instrucciones o sentencias a la computadora son escritas con palabras similares
a los lenguajes humanos (en general en inglés), lo que facilita la escritura y comprensión del programa.
1.2. Algoritmo. La palabra algoritmo se deriva de la
traducción al latín de la palabra árabe alkhowarizmi, nombre de un matemático y
astrónomo árabe que escribió un tratado sobre manipulación de números y ecuaciones en el siglo IX.
La
solución a cualquier problema de cómputo involucra la ejecución de una serie
de acciones en orden específico. Un procedimiento para resolver un problema en términos de: a)
Las acciones a ejecutarse y b) el orden en el cual estas acciones deben
ejecutarse se llama algoritmo.
Un
ejemplo de un algoritmo para llegar a la escuela
a. Salir de la cama
b. Quitarse la pijamas
c. Darse un baño
d. Vestirse
e. Desayunar
f. Utilizar el transporte ( autobús, carro , bicicleta, etc)
1.3 Programa.
o
Secuencia
de instrucciones mediante las cuales se ejecutan diferentes acciones de acuerdo
con los datos que se estén procesando.
o
Es un
algoritmo desarrollado para ser utilizado por la computadora
o
Expresión
de un algoritmo en un lenguaje preciso que puede llegar a entender una máquina
de cómputo.
2. Fases para la creación de un programa.
2.1
Definición del Problema
Esta fase
está dada por el enunciado del problema, el cual requiere una definición clara
y precisa. Es importante que se conozca lo que se desea que realice la
computadora; mientras esto no se conozca del todo no tiene mucho caso continuar
con la siguiente etapa.
2.2 Análisis
del Problema
Una vez
que se ha comprendido lo que se desea de la computadora, es necesario definir:
Los datos
de entrada.
Cuál es
la información que se desea producir (salida)
Los métodos y fórmulas que se necesitan para procesar los
datos.
Una
recomendación muy práctica es el que nos pongamos en el lugar de la computadora
y analicemos que es lo que necesitamos que nos ordenen y en que secuencia para
producir los resultados esperados.
2.3 Diseño del Algoritmo
Las
características de un buen algoritmo son:
Debe
tener un punto particular de inicio.
Debe ser
definido, no debe permitir dobles interpretaciones.
Debe ser
general, es decir, soportar la mayoría de las variantes que se puedan presentar
en la definición del problema.
Debe ser
finito en tamaño y tiempo de ejecución.
2.4
Codificación
La codificación es la operación de escribir la solución del
problema (de acuerdo a la lógica del diagrama de flujo o pseudocódigo), en una serie de
instrucciones detalladas, en un código reconocible por la computadora, la serie de
instrucciones detalladas se le conoce como código fuente, el cual se escribe en
un lenguaje de programación o lenguaje de alto nivel.
2.5 Prueba
y Depuración
Los
errores humanos dentro de la programación de computadoras son muchos y aumentan considerablemente con
la complejidad del problema. El proceso de identificar y eliminar errores, para dar
paso a una solución sin errores se le llama depuración.
La prueba consiste
en la captura de datos hasta que el programa no presente errores (los más
comunes son los sintácticos y lógicos).
2.6
Documentación
Es la
guía o comunicación escrita es sus variadas formas, ya sea en
enunciados, procedimientos, dibujos o diagramas.
A menudo
un programa escrito por una persona, es usado por otra. Por ello la documentación sirve para ayudar a comprender o usar un
programa o para facilitar futuras modificaciones (mantenimiento).
La documentación se
divide en tres partes:
Documentación
Interna
Documentación
Externa
Manual
del Usuario
·
Documentación
Interna: Son los comentarios o mensaje que se añaden al código fuente para
hacer mas claro el entendimiento de un proceso.
·
Documentación
Externa: Se define en un documento escrito los siguientes puntos:
Descripcion del Problema
Nombre
del Autor
Algoritmo
(diagrama de flujo o seudocódigo)
Diccionario
de Datos
Código
Fuente (programa)
·
·
Manual
del Usuario: Describe paso a paso la manera como funciona el programa, con el
fin de que el usuario obtenga el resultado deseado.
2.7
Mantenimiento
Se lleva
acabo después de terminado el programa, cuando se detecta que es necesario
hacer algún cambio, ajuste o complementación al programa para que
siga trabajando de manera correcta. Para poder realizar este trabajo se requiere que el programa este
correctamente documentado.