Matlab creazione di funzioni

summer.911
Sera,ho un problema con matlab
partendo dal presupposto che non s un genio di infromatica e che nonostante abbia seguito il corso all uni sia completamente incapace..ho bisgno di una mano!!!
E' una cavolata ma non riescoa d uscire ho cercat ovunque!

Non riescoa crearmi le funzioni o meglio apro la solita finestra M-File e ad esempio scirvo:
function=somma(a,b)
%calcola la somma di a e b;
S=a+b;
ma non parte e tutti gli esempi sono così e non mi riescoa rendere conto se devo dichiarare le variabili ..non ne ho idea!!
Qualcuno sa farmi un esempio stupido di come scrivere in quella finestra!
grazie

Risposte
apatriarca
L'hai salvata in un file chiamato somma.m? Matlab sta cercando la tua funzione nel posto corretto?

summer.911
Si,ho appena controllato,il file è salvato come somma.m ma quando premo sul pulsante per farlo girare( partire) mi da errore!
non risco a capire xkè!

apatriarca
In che modo richiami la funzione? Qual'è il testo dell'errore?

summer.911
mi sento stupida! io dopo averla scritta vado sul pulsante in alto a sinistra Evaluate cell ma mi da un errore..esattamente esce scritto "the selected cannot be evaluated becouse it is a invalid statement" ma non riescoa capire s enon parte xkè sbaglio ad avviarla. Non si richiama così? io di solito esercitandomi in generale su matrici e vettori sempre così ho fatto!
Help me..:(
e si,se te los tai chiednedo sn incapaceXD

apatriarca
È da un po' che non uso Matlab e non ce l'ho attualmente installato. Però credo sia dovuto al fatto che facendo in quel modo non stai passando alcun parametro alla funzione. Si aspetta insomma solo una sequenza di istruzioni. Vai sulla finestra principale di matlab e scrivi

somma(1,2)

summer.911
Si,facendo così mi da la somma..ma qeusto cosa vuol dire? io cmq ho specificato!
Ma quindi una volta che salvo la funzione posso andare sulla pag principale e vedere se funziona?

apatriarca
Una volta salvato la funzione la puoi usare nella pagina principale come qualsiasi funzione di matlab.

summer.911
un ultima cosa..quando la uso e voglio individuare due valori ad esempio:
function[A,C]=cicle(r);
A=pi*r.^2;
C=2*pi*r;
quando la inserisco da solo uno dei due valori..mi sai dire xkè?
cmq grazie mille!!! ti farò una statua :smt057

apatriarca
In molte funzioni i valori successivi al primo sono usati per risultati "facoltativi" (guarda per esempio la documentazione di max). Per ottenere entrambi i valori devi richiederlo esplicitamente come nella riga

[A, C] = circle(3)

summer.911
ok..ora ti posso sposare!! grazie mille,sei stato gentilissimo..
se ti serve qualcosa in cui posso esserti utile..( logicamente non informatica) sn a tua completa disposizione:)
:smt057

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.