Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagepython
linenumberstrue
if score >= 85:
    grade = 'A';
else:
    if score >= 75:
        grade = 'B';
    else:
        if score >= 60:
            grade = 'C';
        else:
            if score > 50:
                grade = 'D';
            else:
                if score > 40:
                    grade = 'E';
                else:
                    grade = 'F';
print(grade)
PlantUML Macro
start
if (score >= 85) then (true)
	:grade = "A";
else (false)
	if (score > 75) then (true)
		:grade = "B";
	else (false)
		if (score > 60) then (true)
			:grade = "C";
		else (false)
			if (score > 50) then (true)
				:grade = "D";
			else (false)
				if (score > 40) then (true)
					:grade = "E";
				else (false)
					:grade = "F";
				endif
			endif
		endif
	endif
endif
:print(grade);
stop


 

Noen ganger blir det mange slike spørringer nøstet, og det blir fort forvirrende. En bedre løsning er da å bruke elseif-strukturen. Her kan man evaluere flere uttrykk, og man vil kjøre den første kodeblokken som passer spørringen. I diagrammet nedenfor kan man tenke seg at man går fra venstre mot høyre, og følger den første pilen som passer. 

...