Forhold (spørsmålstegn) " Svar "
Er A == B? Ingen
Er B> A? Ja
Er K
Er SALES> = $ 5000,00? Ja
Med hvert spørsmål, datamaskinen kan programmeres til å ta en annen løpet av handlingen avhengig av svaret. Et trinn i en algoritme som fører til mer enn en eventuell videreføring kalles en beslutning.
I flytkartStencils, er diamantformet symbol brukes til å indikere en beslutning.
Spørsmålet er plassert inne i symbol, og hvert alternativ svaret på spørsmålet blir brukt for å merke utgangs pilen som fører til passende neste trinn i algoritmen. Avgjørelsen symbol er den eneste symbol som kan ha mer enn én utgang
Eksemplet nedenfor viser flytskjema for et program som leser to tall og viser tallene leser i nedad.
tilsvarende pseudokode er vist nedenfor.
Merk at med Pseudokode er innrykk brukes til å vise de ulike trinnene som gjelder for en beslutning:
Les A, B
Hvis A er mindre enn B
BIG = B
SMALL = A
annet
BIG = En
SMALL = B
Write (Display) store, små
Loops
De fleste programmer involverer gjenta en rekke instruksjoner om og om igjen helt til noen hendelse inntreffer. For eksempel, hvis vi ønsker å lese ti tall og beregne gjennomsnitt, trenger vi en løkke å telle antall tall vi har lest.
Count sløyfer er løkker hvor programmet skal telle antall ganger operasjoner fullført. Flytdiagrammet nedenfor viser en løkke som teller fra 1 til 10:
Count sløyfe flyt
flytskjemaet vist til venstre
kan forenkles til skjemaet
< p> vist til høyre.
Mens count sløyfer arbeide nøyaktig antall ganger som trengs, i mange tilfeller vet vi ikke hvor mange ganger vi ønsker å gjøre noe. Det er ofte avhengig av data gitt til programmet. Forestill vi endrer vårt problem å lese og beregne gjennomsnittet av en rekke tall.
Vi vil ikke vite hvor mange tall det er, men vil lese tallene til det ikke er mer
To alternative løsninger (ved hjelp av pseudokode) er vist nedenfor.
pre-test sløyfe: post- testsløyfe:
settes gjennomsnittet til null sett gjennomsnittet til null
settes telle til null sett telle til null
satt sammen til null sett total null
lese nummer gjøre
while (ikke end-of-data) lest en rekke
tilveksten telling etter en økning telling etter en
Totalt = total + antall total = tota