Scrivere A in funzione di B

di il
2 risposte

Scrivere A in funzione di B

Salve !! non riesco a fare una cosa che credo sia in realtà molto semplice Ho due grandezze e devo esprimere una in funzione dell'altra. Ho provato a fare cosi :

x=a;
fx=b;
for i=1:x
fx=fx.*x
end

tuttavia quando vado a plottarlo, mi da problemi sulle dimensioni ( sono entrambi vettori riga). E' giusto questa scrittura ? o ne sapete altre ? grazie mille

2 Risposte

  • Re: Scrivere A in funzione di B

    Hai provato ad eseguire il codice in [uref=https://it.mathworks.com/help/matlab/matlab_prog/debugging-process-and-features.html]modalità debug[/url]?

    Cosa sono "a" e "b"?
    Scalari? Si direbbe di sì.

    Quali parametri hai passato alla funzione plot?

    Per come è usata, la variabile "fx" risulta essere uno scalare il cui valore viene sovrascritto ad ogni iterazione.
    Se vuoi memorizzare i valori assunti da "fx" devi usare la variabile come "vettore":

    Assegnando dei valori di prova alle variabili "a" e "b", puoi allocare il primo valore al vettore di output.
    Questo consente di poter impostare il ciclo "for" in modo che ad ogni iterazione venga usato in input il valore calcolato al giro precedente (ammesso che sia questo quello che vuoi fare, dalla somanda non è chiaro).
    Avendo assegnato il primo valore al di fuori del loop, l'indice di questo deve cominciare da 2.
    
    % Inizializzazione parametri
    a=5
    b=3
    
    x=a;
    fx=b;
    
    % Allocazione del primo valore al vettore di output
    fx_ini=fx;
    fx_1(1)=fx_ini*x
    % Loop dal secondo elemento
    for i=2:x
       fx_1(i)=fx_1(i-1).*x
    end
    
    plot([1:a],fx_1)
    
  • Re: Scrivere A in funzione di B

    Grazie mille per la risposta ! si in realtà ho due vettori riga e devo esprimere uno in funzione dell'altro ( ad esempio: valore sulle X e la relativa ampiezza sulle Y). Proverò ad utilizzare quello che mi hai scritto ! grazie ancora sei stato gentilissimo e molto chiaro !
Devi accedere o registrarti per scrivere nel forum
2 risposte