Logo - Procedure

Le procedure forniscono un modo per incapsulare una raccolta di comandi. Una volta che una procedura è stata creata, può essere utilizzata nello stesso modo in cui viene utilizzato un comando integrato. Il "significato" di una procedura è il significato dei suoi singoli comandi.

Una procedura senza argomenti ha la parola "a" (una parola riservata) e il nome della procedura sulla prima riga. (Le parole riservate in Logo non possono essere utilizzate come variabili e hanno un significato e un uso ben definiti.) Ha la parola riservata "end" nell'ultima riga.

Un sottoprogramma è una sequenza denominata di passaggi che deve essere eseguita da un altro programma. Altri nomi per i sottoprogrammi sono procedure e funzioni. In Logo, dici al computer come fare qualcosa, ad esempio

to square
repeat 4 [fd 100 rt 90]
end

Una volta che abbiamo descritto la nostra procedura a Logo, possiamo inserire il suo nome sulla riga di comando, proprio come faremmo con qualsiasi cosa incorporata. In questo caso, dovremmo digitare "quadrato" sulla riga di comando e Logo cerca i comandi per creare un quadrato.

Fare clic sul pulsante che dice Edall(per modificare tutto) per visualizzare l'editor integrato di Logo. (Se il tuo logo non ha un pulsante Edall, digita "edall" sulla riga di comando). Il seguente blocco di codice ha la struttura richiesta del sottoprogramma.

to procedurename
steps of your procedure here
end

La procedura o il sottoprogramma deve iniziare con la parola "a", seguita da un nome a cui pensiamo. Il passaggio successivo consiste nel digitare tutti gli stessi passaggi che scriveremmo sulla riga di comando. La procedura deve terminare con la parola "fine". Tutte le righe di commento o annotazione devono essere precedute da punto e virgola (;).

Di seguito è riportata la dimostrazione pratica dell'esempio precedente:

Ora, dalla riga di comando, esegui la procedura utilizzando il suo nome "quadrato" come mostrato di seguito -

Le procedure non solo possono contenere comandi incorporati, ma possono anche contenere altre procedure.

Nell'esempio seguente, una procedura "fiore" chiama la nostra procedura predefinita "quadrato" dal suo corpo.

La seguente schermata mostra l'output quando viene chiamata la procedura "fiore" -

Non vogliamo che ogni quadrato abbia le stesse dimensioni, vogliamo varietà. In Logo, creiamo variabili, i cui valori possiamo cambiare. Useremo la stessa procedura quadrata con una piccola modifica nel seguente esempio.

to square :n
repeat 4 [fd :n rt 90]
end

Diamo a Logo un valore sostitutivo per ': n' sulla riga di comando come mostrato di seguito.

square 50
square 75
square 100

Ecco la dimostrazione pratica dell'esempio sopra:

Parliamo ora di come passare due argomenti a una procedura. Lo screenshot seguente è una dimostrazione pratica dello stesso.