Este post es viejo, pero espero que esto ayude a otros.
libro "Introducción a los algoritmos" (por Cormen, Leiserson y Rivest) es un buen libro para leer acerca de los algoritmos, pero el "pseudo-código" es terrible. Cosas como Q [1 ... n] no tiene sentido cuando uno tiene que entender lo que Q [1 ... n] se supone que significa eso. ¿Qué tendrá que hacer notar fuera de la "pseudo-código." Por otra parte, los libros como "Introducción a los algoritmos" les gusta usar una sintaxis matemática, que está violando uno de los propósitos de la pseudo-código.
Pseudo-código debe hacer dos cosas. Resumen lejos de la sintaxis y sea fácil de leer. Si el código real es más descriptivo que el pseudo-código y el código real es más descriptivo, entonces no es pseudo-código.
Digamos que estuviera escribiendo un programa sencillo.
diseño de pantalla:
Welcome to the Consumer Discount Program!
Please enter the customers subtotal: 9999.99
The customer receives a 10 percent discount
The customer receives a 20 percent discount
The customer does not receive a discount
The customer's total is: 9999.99
Lista de variables:
TOTAL: double
SUB_TOTAL: double
DISCOUNT: double
Pseudo-código:
DISCOUNT_PROGRAM
Print "Welcome to the Consumer Discount Program!"
Print "Please enter the customers subtotal:"
Input SUB_TOTAL
Select the case for SUB_TOTAL
SUB_TOTAL > 10000 AND SUB_TOTAL <= 50000
DISCOUNT = 0.1
Print "The customer receives a 10 percent discount"
SUB_TOTAL > 50000
DISCOUNT = 0.2
Print "The customer receives a 20 percent discount"
Otherwise
DISCOUNT = 0
Print "The customer does not a receive a discount"
TOTAL = SUB_TOTAL - (SUB_TOTAL * DISCOUNT)
Print "The customer's total is:", TOTAL
Tenga en cuenta que esto es muy fácil de leer y no hace referencia a ninguna sintaxis. Esto apoya las tres estructuras de control de Bohm y de Jacopini.
Secuencia:
Print "Some stuff"
VALUE = 2 + 1
SOME_FUNCTION(SOME_VARIABLE)
Selección:
if condition
Do one extra thing
if condition
do one extra thing
else
do one extra thing
if condition
do one extra thing
else if condition
do one extra thing
else
do one extra thing
Select the case for SYSTEM_NAME
condition 1
statement 1
condition 2
statement 2
condition 3
statement 3
otherwise
statement 4
Repetición:
while condition
do stuff
for SOME_VALUE TO ANOTHER_VALUE
do stuff
que para comparar este N-Queens "pseudo-código" ( https://en.wikipedia.org/wiki/Eight_queens_puzzle ):
PlaceQueens(Q[1 .. n],r)
if r = n + 1
print Q
else
for j ← 1 to n
legal ← True
for i ← 1 to r − 1
if (Q[i] = j) or (Q[i] = j + r − i) or (Q[i] = j − r + i)
legal ← False
if legal
Q[r] ← j
PlaceQueens(Q[1 .. n],r + 1)
Si no se puede explicar en pocas palabras, usted no entiende lo suficientemente bien. - Albert Einstein