Page 1587 - Informatica dalla A a Z
P. 1587
Script e funzioni
Quando si devono risolvere problemi più complessi, allora è più conveniente memorizzare
le istruzioni in un file (M-File) aente come estensione .m. Questo può poi essere utilizzato
come un comando o una funzione.
esistono due generi di M-file:
1) script, che non accettano argomenti d’entrata o argomenti di uscita (operano sui dati
presenti nel workspace);
2) funzioni, che possono accettare argomenti d’entrata e argomenti di uscita (in questo
caso le variabili interne sono locali alla funzione).
Uno script è costituito da una sequenza di istruzioni raggruppare in un unico file; le even-
tuali variabili, contenute in un file script, fanno riferimento a variabili presenti nello spazio
di lavoro principale. Possono operare sia su dati già esistenti nel workspace, sia creando
loro stessi dei dati nuovi su cui operare.
Nota: gli script non forniscano dati di output. MATLAB, inoltre, richiede sempre il salvatag-
gio di uno script prima della sua esecuzione.
Quando si lavora nella finestra di comando è sufficiente evidenziare il testo che si desidera
spostare in uno script, quindi cliccare con il tasto destro del mouse e scegliere la voce Copia
o Taglia dal menu contestuale, o più semplicemente utilizzando i più comodi CTRL+C (o X)
e CTRL + V.
Per creare uno script possiamo operare in 2 modi:
1. cliccare sull’icona New Script presente nella barra delle applicazioni nella scheda HOME
del menu di MATLAB;
2. attraverso il comando edit nomefile.
È possibile inserire delle righe di commento, semplicemente facendole precedere dal sim-
bolo % (percent sign); per inserire dei commenti su più righe useremo il simbolo %{ per
indicare l’inizio del blocco e %} per indicare la fine del blocco.
Le funzioni, a differenza degli script, possono accettare argomenti d’entrata e forniscono
argomenti di uscita.
Approfondimento: I sottoprogrammi del tipo funzione hanno un tipo esplicito, prendono
in ingresso un insieme di valori (parametri) e sono indirizzate a restituire uno o più valori
come risultato dell’elaborazione.
1583