Sto provando a scrivere una semplice funzione che prende due input, x
e , e li passa a tre altre semplici funzioni che aggiungono, moltiplicano e dividono. La funzione principale dovrebbe quindi visualizzare i risultati come una stringa contenente x
, e i totali.Come si inseriscono valori variabili in una stringa di testo in MATLAB?
Penso che ci sia qualcosa che non sto capendo sugli argomenti di output. Comunque, ecco il mio codice (pietoso):
function a=addxy(x,y)
a=x+y;
function b=mxy(x,y)
b=x*y;
function c=dxy(x,y)
c=x/y;
La funzione principale è:
function [d e f]=answer(x,y)
d=addxy(x,y);
e=mxy(x,y);
f=dxy(x,y);
z=[d e f]
Come faccio ad avere i valori per x
, y
, d
, e
, e f
in una stringa? Ho provato diverse matrici e roba del tipo:
['the sum of' x 'and' y 'is' d]
ma nessuna delle variabili è visibile.
due ulteriori problemi:
- Perché la funzione che restituisce "ans 3", anche se non ho chiesto per la durata del
z
? - Se qualcuno potesse raccomandare un buon libro per principianti allo scripting MATLAB, lo apprezzerei molto.
uso sprintf: str = 'DEF'; var = sprint ('abc% SGHI', str); => abcDEFghi – KillBill