Sei sulla pagina 1di 12

DISEÑO DE PROGRAMAS.

PSEUDOCÓDIGO Y DIAGRAMAS.
2 mayo, 2013 MartaISO

Cuando diseñamos programas de ordenador, independientemente de su tamaño y


complejidad, debemos seguir un proceso que involucra diversas herramientas que nos
ayudan automatizando y apoyando la creación de dichos programas.

CONCEPTOS BÁSICOS:

Un algoritmo es un conjunto de instrucciones o reglas bien definidas, organizadas y finitas


que nos permite realizar una determinada actividad siguiendo una serie de pasos sucesivos
y no ambiguos.

Todo algoritmo debe cumplir las siguientes restricciones:

• Debe ser bien definido.


• Debe ser preciso.
• Debe ser finito.

Para que un ordenador sea capaz de ejecutar un algoritmo, deberemos proporcionárselo en


forma de programa, de tal manera que sea comprensible para la máquina:

• Cada paso del algoritmo se corresponderá con una instrucción en el programa.


• El programa deberá especificar la secuencia de las operaciones a realizar, así como
el orden de ejecución de las mismas.

Para especificar el orden en que las instrucciones de un algoritmo van a ser ejecutadas
utilizaremos las estructuras de control, que pueden ser de tres tipos:

• Secuencial.
• Selección (o estructuras alternativas).
• Repetición (o bucles).
FASES PARA LA CREACIÓN DE UN PROGRAMA:

1. Análisis del problema: en esta fase debemos especificar cuáles son los requisitos a
los que se debe dar solución desde el programa a realizar.
2. Diseño y verificación del algoritmo: nos conduce a un diseño escrito y detallado
del algoritmo (o algoritmos) que solucionarán el problema al que nos enfrentamos.
3. Codificación: donde implementaremos el diseño en el lenguaje de programación
elegido.
4. Compilación y enlazado (linkedición): donde se traduce el código fuente escrito a
código máquina mediante el empleo de compiladores y generándose el programa
ejecutable por el ordenador.
5. Verificación y depuración: donde se buscan errores producidos en las fases
anteriores y se eliminan.
6. Documentación: donde se creará la documentación del programa realizado, tanto
técnica como a nivel de usuario (manuales).

Fase 2: Diseño y verificación del algoritmo.

Uno de los métodos más utilizados para el diseño de algoritmos es el denominado “divide y
vencerás” y consiste en dividir un problema complejo en subproblemas y a su vez éstos en
otros de nivel más bajo hasta obtener subproblemas fáciles de solucionar e implementar
(refinamiento sucesivo). Este método se conoce como diseño descendente o modular.
HERRAMIENTAS PARA LA REPRESENTACIÓN DE ALGORITMOS:

1.- Pseudocódigo:

Es un pseudolenguaje intermedio entre el natural del programador y el lenguaje de


programación seleccionado, considerándose por tanto un lenguaje de pseudoprogramación.

No existe una sintaxis estándar para el pseudocódigo, utilizando una mezcla de lenguaje
natural (utilizando como base la lengua nativa del programador) y una serie de símbolos,
términos y otras características propias de los lenguajes de programación de alto nivel
como Pascal o APL.

Sus principales características son:

• Es fácil de aprender y utilizar.


• Es conciso.
• Es independiente del lenguaje de programación que se vaya a utilizar.
• Facilita el paso del programa al lenguaje de programación.
• Es fácil de mantener.

Sus principales ventajas sobre las técnicas diagramáticas que veremos a continuación son
su facilidad de creación, evolución y mantenimiento, y la facilidad para expresar el
pseudocódigo en cualquier lenguaje de programación.

Sus mayores inconvenientes son su falta de estandarización y la dificultad para su lectura


cuando su tamaño crece.

Las palabras, símbolos y operadores más utilizados en pseudocódigo son los siguientes:
2.- Diagramas de flujo:

Son herramientas gráficas para la representación visual y gráfica de algoritmos, compuestos


por una serie de símbolos icónicos unidos por flechas.

Características:

• Los símbolos representan acciones o funciones en el programa.


• Las flechas representan el orden de realización de las acciones o funciones,
marcando el sentido o flujo lógico del algoritmo.
• Cada símbolo tendrá al menos una flecha que conduzca a él y una flecha que parta
de él, a excepción de los terminadores y conectores.
• Se leen de arriba a abajo y de izquierda a derecha.

Sus principales ventajas son que al ser visuales son muy sencillos de entender y que
utilizan símbolos estándar.

Su mayor desventaja es la dificultad de mantenimiento y actualización, puesto que deben


utilizarse editores gráficos.
Los símbolos están normalizados por las organizaciones de estandarización internacionales
ANSI (American National Standar Institute) e ISO (International Standard Organization) y
los más utilizados son los siguientes:
También hay una serie de símbolos secundarios que son:

3.- Diagramas de Nassi-Schneiderman:

Estos diagramas (también conocidos como diagramas de Chapin o diagramas N-S) aparecen
contenidos en un rectángulo, donde un conjunto de símbolos adyacentes representan las
estructuras de control básicas de la programación estructurada.

Sus principales ventajas son:

• Adecuación a la programación estructurada.


• Favorecen las técnicas de diseño descendente.
• Favorecen la partición de los programas en módulos pequeños; resaltando más las
partes generales sobre los detalles concretos, que quedan más pequeños cuanto más
específicos son.

Su principal desventaja es su dificultad de modificación.


En las siguientes figuras se muestran las principales construcciones de los diagramas de
Nassi-Schneiderman:

EJEMPLO DE DISEÑO DE ALGORITMOS:

Vamos a realizar el diseño del algoritmo para determinar si un número natural mayor que
uno es primo, expresándolo en lenguaje natural, pseudocódigo, diagrama de flujo, diagrama
N-S y por último codificado en lenguaje C.

Potrebbero piacerti anche