Sezione 05 / 08
Come definire blocchi di codice riutilizzabili con FUN e THEN, e come eseguirli condizionatamente o in loop con GO.
Una funzione è un blocco di codice che viene descritto senza essere eseguito. Si esegue solo quando viene chiamata.
Parametri: variabili esterne da passare alla funzione, separati da virgola. Possono essere zero.
return: facoltativo. Se incluso deve stare alla fine del corpo. Il valore di ritorno può essere salvato o stampato. Una sola istruzione return per funzione.
THEN è una forma semplificata di funzione: non accetta parametri e non può avere return. Si chiude con THEND.
Equivale esattamente a FUN nome() senza return. Viene usato principalmente con il GO block per gestire condizioni.
nome().
GO esegue una funzione o un blocco THEN in base ad una condizione booleana, con una ripetizione opzionale.
condizione: variabile IF (o qualsiasi booleano) — il blocco viene eseguito solo se è V.
ripetizioni: quante volte eseguire il blocco. Se 1 si può omettere. Il valore speciale #c ripete finché la condizione rimane V.
Dopo un GO si possono aggiungere rami alternativi con & (elif) e && (else). Solo una condizione può essere vera alla volta.
Invece di definire un THEN separato, si può scrivere il corpo direttamente nel GO con la sintassi @{...}. La condizione si può anch'essa definire inline:
All'interno di un corpo inline, la variabile speciale THISGO contiene la condizione corrente e può essere modificata per interrompere il loop:
8 domande · serve l'80% per passare alla sezione 6
Domanda 01
Qual è la differenza tra FUN e THEN?
Domanda 02
Cosa stampa questo codice?
Domanda 03 — Completamento
Esegui il blocco azione solo se cond è vera, per 3 volte.
Domanda 04
Cosa significa #c come valore di ripetizioni nel GO?
Domanda 05
In un GO con più rami, cosa fa &&?
Domanda 06
Quante volte viene stampato "ciao" con questo codice?
Domanda 07 — Completamento
Scrivi un GO inline che stampa "positivo" se n è maggiore di zero, "negativo" altrimenti.
Domanda 08
A cosa serve la variabile THISGO?