Técnicas de programación
y
lenguaje C.
Rafael Jurado Moreno
(
[email protected])
I.E.S. María Moliner.
Segovia 2009
1.Conceptos generales.
Técnicas de programación Ver.1.0
1.1.Introducción
Un ordenador es una máquina de procesa
miento de información. Dispone de rapidez, preci
sión y memoria para ejecutar programas elaborados
por el programador, pero carece de inteligencia.
(El tonto rápido).
Un programa es un conjunto de instrucciones
que el ordenador debe ejecutar para realizar la tarea
prevista por el programador.
1.2.Solución de problemas.
En el proceso de resolución de un problema
de programación se distinguen las siguientes fases:
● Análisis detallado del problema
● Descomposición de la solución en tareas
1.2.1.Análisis del problema.
elementales o diseño del algoritmo.
● Codificación del algoritmo.
● Obtención del programa ejecutable.
● Prueba, verificación y depuración.
● Documentación.
Al analizar el problema deben considerarse
● El tratamiento que debe realizarse con
los siguientes factores:
● El equipo que se va a utilizar.
● Los datos de entrada.
1.2.2.Diseño del algoritmo.
los datos.
● Los resultados de salida.
● La posibilidad de descomponer el pro
blema en módulos más pequeños.
Es una formula para resolver un problema.
Conjunto de acciones o secuencia de operaciones
que ejecutadas en un determinado orden resuelven
el problema. Existen muchas formas de resolver un
problema, hay que coger la más efectiva. Caracte
rísticas:
● Tiene que ser preciso.
● Tiene que estar bien definido.
● Tiene que ser finito.
El algoritmo se puede expresar de forma grá
fica o mediante pseudocódigo (Parecido a los len
guajes de programación de alto nivel).
1.2.3.Codificación del algoritmo.
Se trata de la traducción del algoritmo al len
guaje de programación elegido.
1.2.4.Obtención del programa.
Se realiza en tres fases:
● Edición. En esta fase se crea el código
fuente. Se trata de un fichero de texto es
crito en el lenguaje de programación ele
gido.
● Compilación. Sirve para obtener el pro
grama en lenguaje máquina (Instruccio
nes que la máquina entiende). El resulta
do son los ficheros de código objeto o
código máquina (depende del Hardwa
re). La compilación se realiza con pro
gramas compiladores o intérpretes, se
1
gún el lenguaje elegido
● Montaje o linkado. El montaje o linka
do (enlazado) es un proceso de enlace
entre las distintas partes que componen
el programa y la adecuación del código
1.2.5.Depuración del programa.
Técnicas de programación Ver.1.0
para obtener un programa ejecutable para
el sistema operativo en el que estamos
trabajando. (Depende del sistema ope
rativo).
Es la fase en la cual debe estudiarse el com
portamiento del programa en todas las situaciones
límite que puedan plantearse, retocando el código y
el algoritmo para conseguir un resultado óptimo.
1.2.6.Documentación.
Un programa debe tener dos niveles de docu
mentación:
● Documentación Interna: Comentarios
del código fuente incluidos en el mismo
fichero, que clarifiquen el funcionamien
to del programa para que pueda ser com
prendido por cualquier programador.
1.3.Lenguajes de programación.
1.3.1.Lenguajes interpretados.
Se ejecuta el código fuente directamente
por medio de un intérprete, que es un programa que
realiza el siguiente proceso:
● Carga el código fuente (fichero de texto).
● Lee el código de una línea.
● Convierte al código en código máquina.
● Envía las instrucciones al procesador.
1.3.2.Lenguajes compilados.
Son aquellos que permiten obtener un progra
ma ejecutable y autónomo a partir del código
fuente, que puede ser ejecutado en cualquier má
quina bajo el sistema operativo para el que se com
piló.
El proceso anterior se realiza por medio de
un programa que se llama compilador y que realiza
las siguientes tareas:
● Documentación externa: No forma par
te del programa y se suele suministrar en
papel. Debe incluir la descripción del
problema, de los datos de entrada y sali
da, del algoritmo, del programa comple
to y los manuales de usuario y de mante
nimiento.
● Repite desde el punto 2 hasta el final del
programa.
En este caso el código fuente es indepen
diente del sistema operativo.
Los lenguajes interpretados más utilizados
actualmente son los diversos script. (Java, c, perl,
delfi).
● Carga el código fuente (fichero de texto).
● Traduce el código fuente a código má
quina /código objeto).
● Enlaza (Linkado) el código objeto con
las librerías y funciones necesarias y crea
el ejecutable.
Este proceso se realiza una única vez, que
dando al final un ejecutable autónomo que se pue
de lanzar directamente desde el sistema operativo.
2
Técnicas de programación Ver.1.0
1.4.Metodología de la programación.
La calidad de un programa está determinada
por las siguientes características:
● Legibilidad. Facilidad para ser entendi
do por cualquier programador.
● Portabilidad. Capacidad para compilar
se o interpretarse en distintas máquinas,
e incluso para ser traducido a otros len
guajes.
● Fiabilidad. Facilidad de recuperación
del control tras errores de ejecución o
uso inadecuado.
● Eficiencia. Grado de aprovechamiento
de los recursos.
La metodología de programación describe las
técnicas y métodos para elaborar programas que re
únan los máximos requisitos de calidad. Para ello
es necesario que el programa pueda mantenerse,
modificarse o actualizarse fácilmente por distintos
programadores. Para conseguirlo se han definido
dos criterios de programación: La programación
modular y la programación estructurada. Los
dos criterios son complementarios y no excluyen
tes.
1.4.1.Programación modular.
Consiste en descomponer el programa en
partes claramente diferenciadas, llamadas módu
los, que pueden ser tratados de forma independien
te. Son bloques de instrucciones con nombres dife
renciados que pueden ser llamados varias veces
desde el módulo principal.
Los módulos pueden estar compuestos, a su
vez, por otros módulos o realizar llamadas a otros
módulos.
1.4.2.Programación estructurada.
Es la técnica que permite realizar cualquier
programa que disponga de un único punto de entra
da y uno solo de salida mediante el empleo de tres
tipos de estructuras de control:Secuenciales, con
dicionales y repetitivas.
● Estructura secuencial: Se agrupan las
operaciones o sentencias de forma conse
cutiva
1.5.Elementos en los programas.
Los criterios para la división de un programa
en módulos dependen del programador, aunque es
importante que cumplan los siguientes requisitos:
● Tendrán un único punto de entrada y
otro de salida.
● El módulo principal será reducido, para
que se aprecie claramente el algoritmo.
● Deben ser independientes entre sí.
● Deben resolver completamente partes di
ferenciadas y definidas del problema.
● Estructura condicional: Se permite la se
lección entre dos o más grupos de opera
ciones dependiendo del cumplimiento de
una condición.
● Estructura repetitiva: Permite ejecutar
repetidamente una o varias sentencias un
número determinado de veces depen
diendo de una condición.
Cuando se escribe el programa se utilizan
unos elementos cuyas características están determi
nadas por el lenguaje utilizado. Entre estos elemen
tos cabe destacar los identificadores, las constantes,
las variables, los operadores, las expresiones y las
sentencias.
3
1.5.1.Identificadores.
Los identificadores o etiquetas son palabras esco
gidas por el programador para designar los elemen
tos de un programa susceptibles de ser nombrados
1.5.2.Datos.
Constituyen la información que será procesa
da por el programa. Los datos pueden ser simples
o estructurados.
● Simples: Aquellos que no pueden des
componerse en otros más sencillos.
● Carácter. Es la unidad de información
más pequeña, pueden ser alfabéticos
(A...Z, a...z), numéricos (0...9) y especia
les (=, *, +, , etc.).
Técnicas de programación Ver.1.0
(como: variables, constantes, subprogramas, etc.).
Están formados por caracteres alfabéticos y dígitos
que empiezan por un carácter alfabético. Los iden
tificadores deben que ser significativos.
● Numéricos: Representan cantidades y
pueden ser de tipo entero o real.
● Lógicos o booleanos: Solo pueden to
mar dos valores (1 ó 0, Cierto ó falso).
● Cadenas de caracteres: Conjunto de ca
racteres alfabéticos, numéricos y espe
ciales.
● Estructurados: Son conjuntos de datos
simples agrupados como una única enti
dad con un único identificador.
1.5.3.Constantes.
Tienen un valor fijo que se le da cuando se
do durante la ejecución.
define la constante y que ya no puede ser modifica
1.5.4.Variables.
El valor puede cambiar durante la ejecución
del algoritmo, pero nunca varia su nombre y su
tipo. Las características de cada variable son: tipo
de dato(entero, carácter, booleano, etc.), identifi
cador, contenido y memoria ocupada.
Dirección de memoria > 12345
Contenido de la variable
Nombre de las Variables Nota1 Alumnos Tléfono
12346
28
8
12347
921427011
12348
12349
12350
1.5.5.Operadores.
Son símbolos que representan las distintas
operaciones que se pueden realizar con los datos.
Su cantidad y símbolo dependen del lenguaje utili
zado. De acuerdo con su tipo se pueden clasificar
en:
● Aritméticos: Suma, resta, multiplica
ción, división, potenciación, división en
tera, módulo o resto de división entera...
● Alfanuméricos: Concatenación.
● De asignación: Para establecer nuevos
valores de las variables.
● Relacionales: Que permiten realizar
comparaciones.
● Lógicos: AND, OR, OR exclusiva,
NOT...
4
1.5.6.Expresiones.
Es la combinación de operadores y datos
cuyo resultado es un valor. Es importante el orden
1.5.7.Sentencias o instrucciones.
Son las acciones que forman el programa y se
forman con expresiones válidas en el lenguaje de
programación elegido. Las sentencias pueden ser:
● De asigna
Comentarios de: Técnicas de programación y lenguaje C (0)
No hay comentarios