Rutediagram – simpelt cheat sheet

Notation, regler og eksempler til at tegne programmer som rutediagrammer

Notation

Start
Stop
Aktivitet
Input / output
Beslutning
Forbindelsespunkt
Sideskift

En ikke-fyldt cirkel med et tal viser, at flowet fortsætter på en anden side.

Går flowet til 2, leder man på den anden side efter en cirkel med 2. Den fungerer som startpunkt for fortsættelsen.

Regler

  1. Én start: Der er én og kun én start-oval.
  2. Slut: Der er mindst én slut-oval.
  3. Retning: Retningen angives med pilespidser på forbindelseslinjerne.
  4. Entydighed: Det skal altid være entydigt, hvilken vej man skal gå.
  5. Beslutning: En beslutningsdiamant har altid tekst med et spørgsmål.
  6. Valg: Veje ud fra en beslutning har tydelig indikation, fx Sand/Falsk eller Ja/Nej.

Hvad betyder figurerne?

Figur Bruges til Eksempel
Oval Start / Stop Start, Stop
Rektangel Aktivitet i++
Parallelogram Input / output Udskriv facit
Diamant Beslutning Er alder > 17?
Sort punkt Forbindelsespunkt Samler flow
Cirkel + tal Sideskift Fortsæt ved 2

God praksis

  • Følg flowet oppefra og ned og helst fra venstre mod højre.
  • Undgå krydsende forbindelseslinjer.
  • Hold teksten kort: én aktivitet pr. rektangel.
  • Skriv et spørgsmål i en beslutningsdiamant.
  • Mærk alle beslutningsveje tydeligt.
  • Brug forbindelsespunkter, når flow ellers bliver uklart.

Tre gode eksempler

If–else: Beslutningen deler flowet i to tydelige veje: sand og falsk, som senere samles igen.
While: Betingelsen testes først. Ved sand udføres instrukserne, og flowet går tilbage til betingelsen.
Do–while: Instrukserne udføres først. Derefter testes betingelsen, så løkken udføres mindst én gang.

Forbindelse til C#

if (age > 17)
{
    Console.WriteLine("Voksen");
}
else
{
    Console.WriteLine("Ikke voksen");
}

Rutediagrammet viser flowet – ikke C#-syntaksen. Diamanten svarer til betingelsen, og rektanglerne til instrukserne.