jueves, 2 de julio de 2009

Pseudocódigo

El pseudocódigo describe un algoritmo utilizando una mezcla de frases en lenguaje común, instrucciones de programación y palabras clave que definen las estructuras básicas. Su objetivo es permitir que el programador se centre en los aspectos lógicos de la solución a un problema. No siendo el pseudocódigo un lenguaje formal, varían de un programador a otro, es decir, no hay una estructura semántica ni arquitectura estándar. Es una herramienta ágil para el estudio y diseño de aplicaciones, veamos un ejemplo, que podríamos definir como: lenguaje imperativo, de tercera generación, según el método de programación estructurada.

Pseudocódigo = Pseudo (Supuesto) + Código (Instrucción)

La programación estructurada es una forma de escribir programas de ordenador (programación de computadora) de forma clara. Para ello utiliza únicamente tres estructuras: secuencia, selección e iteración.

Funciones y operaciones: Como se había mencionado antes, cada autor usa su propio pseudocódigo con sus respectivas convenciones. Por ejemplo, considere la instrucción "Reemplace el valor de la variable x por el valor de la variable y"; algunas de las posibles sintaxis para indicar lo anterior podrían ser: asigne a el valor de Las operaciones aritméticas se representan de la forma usual en matemáticas. y las operaciones complejas se representan del mismo modo:

Definición de estructuras de control: Se consideran tres estructuras de control para desarrollar los procedimientos (secuenciales, selectivos e interactivos):

Secuencial Las instrucciones se siguen en una secuencia fija que normalmente viene dada por el número de renglón. Es decir que las instrucciones se ejecutan de arriba hacia abajo. Las instrucciones se ejecutan dependiendo de la condición dada dentro del algoritmo.

Selectiva La instrucción selectiva determina si una determinada instrucción se ejecuta o no, según el cumplimiento de una condición P. Diagrama de flujo que muestra el funcionamiento de la instrucción condicional si condición P entonces instrucciones fin si La condición P es una variable booleana o una función reducible a booleana (lógica, Verdadero/Falso). Si esta condición es cierta se ejecuta Instrucciones1, si no es así, ésta no se ejecuta.

a. Selectiva doble (alternativa): La instrucción selectiva realiza una instrucción de dos posibles, según el cumplimiento de una condición P. Diagrama de flujo que muestra el funcionamiento de la instrucción condicional si condición P entonces instrucciones1 si no istrucciones2 fin si La condición P es una variable booleana o una función reducible a booleana (lógica, Verdadero/Falso). Si esta condición es cierta se ejecuta Instrucciones1, si no es así, entonces se ejecuta Instrucciones2.

b. Selectiva múltiple: También es común el uso de una selección múltiple que equivaldría a anidar varias funciones de selección. si condición1 entonces instrucciones1 si no si condición2 entonces instrucciones2 si no si condicción3 entonces instrucciones3 . . . si no instruccionesn fin si En este caso hay una serie de condiciones que tienen que ser mutuamente excluyentes, si una de ellas se cumple las demás tienen que ser falsas necesariamente, hay un caso si no que será cierto cuando las demás condiciones sean falsas. En esta estructura si Condición1 es cierta, entonces se ejecuta sólo Instrucciones1. En general, si Condicióni es verdadera, entonces sólo se ejecuta Instruccionesi

c. Selectiva múltiple-Casos: Una construcción similar a la anterior (equivalente en algunos casos) es la que se muestra a continuación. seleccionar indicador caso valor1 instrucciones1 caso valor2 instrucciones2 caso valor3 instrucciones3 . . . en otro caso instruccionesn fin seleccionar En este caso hay un Indicador es una variable o una función cuyo valor es comparado en cada caso con los valores "Valori", si en algún caso coinciden ambos valores, entonces se ejecutarán las Instruccionesi correspondientes. La sección en otro caso es análoga a la sección si no del ejemplo anterior.

Iterativa

Las instrucciones iterativas abren la posibilidad de realizar una secuencia de instrucciones más de una vez.

a. Bucle mientras: El bucle se repite mientras la condición P sea cierta, si al llegar por primera vez al bucle mientras la condición es falsa, el cuerpo del bucle no se ejecuta ninguna vez. Diagrama de flujo que muestra el funcionamiento de la instrucción mientras mientras condición P hacer instrucciones fin mientras

b. Bucle repetir: Existen otras variantes que se derivan a partir de la anterior. La estructura de control repetir se utiliza cuando es necesario que el cuerpo del bucle se ejecuten al menos una vez y hasta que se cumpla la condición P: repetir instrucciones hasta condición P La estructura anterior equivaldría a escribir: instrucciones mientras No condicción P hacer instrucciones fin mientras

c. Bucle para: Una estructura de control muy común es el ciclo para, la cual se usa cuando se desea iterar un número conocido de veces, empleando como índice una variable que se incrementa: para i = x hasta n hacer instruciones fin para La cual se define como: i = x mientras i<_n> instruciones i = i + 1 fin mientas

d. Bucle para cada: Por último, también es común usar la estructura de control para cada. Esta sentencia se usa cuando se tiene una lista o un conjunto L y se quiere iterar por cada uno de sus elementos: para cada x E L hacer instrucciones fin para cada Si asumimos que los elementos de L son , entonces esta sentencia equivaldría a: para i = 0 hasta n hacer x = L1 instrucciones fin para Sin embargo, en la práctica existen mejores formas de implementar esta instrucción dependiendo del problema. Es importante recalcar que el pseudocódigo no es un lenguaje estandarizado. Eso significa que diferentes autores podrían dar otras estructuras de control o bien usar estas mismas estructuras, pero con una notación diferente. Sin embargo, las funciones matemáticas y lógicas toman el significado usual que tienen en matemática y lógica, con las mismas expresiones.

Cualquier instrucción puede ser sustituida por una estructura de control. El siguiente ejemplo muestra un pseudocódigo de un método de ordenamiento denominado Ordenamiento de burbuja en el cual aparecen varias estructuras anidadas. Este algoritmo ordena una lista L.

No hay comentarios:

Publicar un comentario