Stille spørgsmål, få svar...

if og while er udførselskontroller som vi vil diskutere i næste afsnit. I dette afsnit bruger vi if-kommandoen til at forklare spørgsmål.

Spørgsmål

Et simpelt eksempel på et spørgsmål:

x = 6
if x > 5 [
  print hello
]
I dette eksempel er spørgsmålet x > 5, hvis svaret på dette spørgsmål er 'sand' så vil koden mellem parenteserne blive udført. Spørgsmål er en vigtig del af programmering og bruges ofte sammen med udførselskontroller, såsom if. Alle tal og variabler (tal-containere) kan sammenlignes med hianden med spørgsmål.

Her er alle mulige spørgsmål:

Tabel 4.1. Typer af spørgsmål

a == ber lig medsvaret er “sand” hvis a er lig med b
a != bikke lig medsvaret er “sand” hvis a ikke er lig med b
a > bstørre endsvaret er “sand” hvis a er større end b
a < bmindre endsvaret er “sand” hvis a er mindre end b
a >= bstørre end eller lig medsvaret er “sand” hvis a er større end eller lig med b
a <= bmindre end eller lig medsvaret er “sand” hvis a er mindre end eller lig med b

Spørgsmål er fremhævede med lyseblåt i kodeditoren.

Spørgsmålsklister

Spørgsmålenes klisterord kan få nogle spørgsmål til at blive til et stort spørgsmål.

a = 1
b = 5
if a < 5 and b == 5 [
  print goddag
]
I dette eksempel bliver klister-ordet and brugt til at klistre 2 spørgsmål (a < 5, b == 5) sammen. Hvis en side af and vil svare 'falsk' så vil hele spørgsmålet svare 'falsk', fordimed klister-ordet and skal begge sider være 'sand' for at svare 'sand'. Glem endelig ikke parenteser rundt om spørgsmålene!

Her er en skematisk oversigt, en mere detaljeret forklaring følger nedenfor:

Tabel 4.2. Spørgsmål klister-ord

andBegge sider skal være 'sande' for at svaret er 'sand'
orHvis en af siderne er 'sand' så er svaret 'sand'
notSpecialtilfælde: virker kun for et spørgsmål. Ændrer 'sand' til 'falsk' og 'falsk' til 'sand'.

Klisterord i spørgsmål er fremhævede med violet i kodeditoren.

and

Når to spørgsmål klistres sammen med og skal begge sider af og være 'sande' for at resultatet skal være 'sandt'. Et eksempel:

a = 1
b = 5
if ((a < 10) and (b == 5)) and (a < b) [
  print "Hej"
]
I dette eksempel ser du et spørgsmål klistret sammen med et andet spørgsmål.

or

Hvis et af de to spørgsmål som klistres sammen med eller er 'sandt' er resultatet 'sandt'. Et eksempel:

a = 1
b = 5
if ((a < 10) or (b == 10)) or (a == 0) [
  print "Hej"
]
I dette eksempel ser du et spørgsmål klistret sammen med et andet spørgsmål.

not

not er et specielt klisterord i spørgsmål eftersom det kun virker med et spørgsmål af gangen. not ændrer 'sand' til 'falsk' og 'falsk' til 'sand'. Et eksempel:

a = 1
b = 5
if not ((a < 10) and (b == 5)) [
  print "Goddag"
]
else
[
  print "Farvel"
]
I dette eksempel er det sammenklistrede spørgsmål 'sandt', men not ændrer det til 'falsk'. Altså skrives "Farvel" ud på kanvassen.