Il Matlab consente di memorizzare una sequenza di istruzioni in un file; questo, per essere accessibile, deve avere l'estensione ".m"e pertanto si chiama M-file
Gli M-file possono essere di due tipi: script o function.
>> sommeprodotto ¿
Oppure, in alternativa, soprattutto mentre si costruisce o corregge uno script all'interno del M-file Editor, selezionare nel menu`: Debug e poi Run.
function[o1,o2,.....,on] = nome-funzione (i1,i2,.....,im)
dove o1,o2,.....on sono le variabili di output, nome-funzione e` il nome del file (senza l'estensione .m) e i1,i2,.....im sono le variabili di input. Se la variabile di output e` una sola si possono omettere le parentesi quadre. Le linee successive contengono la sequenza di istruzioni necessarie a calcolare l'output a partire dall'input.
NOTE:
In testa ad uno script o ad una function, possono essere scritte linee di commento, ad esempio sul significato delle variabili in ingresso e uscita della function stessa, precedute (come tutti i commenti in Matlab) dal simbolo %. Questo e` molto utile perche` in qualunque momento successivo si possono richiamare, nella finestra di Command, questi commenti semplicemente digitando il comando:
help nome-funzione.
(vedi l'esempio piu` avanti)
Per eseguire una function occorre digitare una chiamata nella stessa forma in cui e` scritta la prima istruzione :
[w1,w2,.....,wn] = nome-funzione (v1,v2,.....,vm)
dove questa volta v1,v2,.....,vm contengono valori noti (anche sotto forma di variabili gia` definite), mentre w1,w2,.....,wm sono le variabili in cui vogliamo memorizzare i risultati, e con i nomi o1,o2,.....,on.
Esempio. Se e` stata scritta la seguente function memorizzata nel file sumprod.m:
_______________________________________________________
%
% function [s,p] = sumprod(x,y)
%
%
calcola somma e prodotto di due numeri x e y
%
function [s,p] =
sumprod(x,y)
s = x+y ;
p = x*y;
_______________________________________________________
digitando:
>> help sumprod
otteniamo:
function [s,p] = sumprod(x,y)
calcola somma
e prodotto di due numeri x e y
>>
Per utilizzare la function sumprod possiamo digitare:
>> [som,prodot] = sumprod(3,4)
som
=
7
prodot =
12
>>
whos
Name
Size Bytes
Class
prodot
1x1
8 double
array
som
1x1
8 double array
Grand total is 2 elements using 16
bytes
>>
Si notino i valori espliciti passati in input e il diverso nome delle variabili in output.
In alternativa, possiamo memorizzare il seguente script memorizzato nel file sommeprodotto.m:
%
% programma che calcola somma e prodotto
di a e b dati in input,
% utilizzando la function [s,p] =
sumprod(x,y)
%
a=input('1^ numero');
b=input('2^
numero');
[som,prodot]=sumprod(a,b);
disp('la somma e''');
disp(som)
disp('il prodotto e'''); disp(prodot)
che eseguiamo con:
>> sommeprodotto
1^ numero 5
2^
numero 6
la somma e'
11
il prodotto e'
30
>>
whos
Name
Size Bytes
Class
a
1x1
8 double
array
b
1x1
8 double array
prodot
1x1
8 double
array
som
1x1
8 double array
Grand total is 4 elements using 32
bytes
>>
Si notino le variabili in input contenenti valori definiti da tastiera.
- L - K - J -