Dette innlegget er gammelt, men forhåpentligvis vil dette hjelpe andre.
"Introduksjon til Algoritmer" bok (ved Cormen, Leiserson og Rivest) er en god bok å lese om algoritmer, men "pseudo-kode" er forferdelig. Ting som Q [1 ... n] er tull når man trenger å forstå hva Q [1 ... n] er vel å bety. Som vil måtte legges merke til utenfor "pseudo-kode." Videre bøker som "Introduction to Algorithms" liker å bruke en matematisk syntaks, som bryter ett formål av pseudo-kode.
Pseudo-koden skal gjøre to ting. Abstract unna syntaks og være lett å lese. Hvis selve koden er mer beskrivende enn pseudo-kode, og selve koden er mer beskrivende, så er det ikke pseudo-kode.
Si at du var å skrive et enkelt program.
Skjermen design:
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
Variabel liste:
TOTAL: double
SUB_TOTAL: double
DISCOUNT: double
Pseudo-kode:
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
Legg merke til at dette er veldig lett å lese og refererer ikke til noen syntaks. Dette støtter alle tre av Bohm og Jacopini kontrollstrukturer.
Sekvens:
Print "Some stuff"
VALUE = 2 + 1
SOME_FUNCTION(SOME_VARIABLE)
utvalg:
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
Gjentakelse:
while condition
do stuff
for SOME_VALUE TO ANOTHER_VALUE
do stuff
sammenligne det til denne N-Queens "pseudo-kode" ( 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)
Hvis du ikke kan forklare det enkelt, forstår du ikke det godt nok. - Albert Einstein