Area di un segnale

Nicholas_ASR
Devo calcolare i vari pezzi di area positiva di un segnale, ho implementato il seguente codice:
k=1;

for i = 2:length(Ascisse)-1
    A = sum(sig_filtrato(Ascisse(i-1):Ascisse(i)));
    Area(k) = A;
    i = i+i;
    k = k+1
end


Il problema è che sembra come se la i nel for venga incrementata soltanto di 1 e quindi mi ritrovo calcolate il doppio delle aree, mentre a me ne servirebbe soltanto la metà.. il for non incrementa già di suo la i? Se poi la incremento di nuovo nel corpo del for non viene così incrementata di 2 ogni ciclo?

Risposte
apatriarca
No, il valore di i alla k-esima iterazione è quello contenuto in (2:length(Ascisse)-1)(k). Non ha importanza se ad un certo punto cerchi di incrementare il valore.. Puoi però scrivere 2:2:length(Ascisse)-1 se vuoi incrementare di due tutte le volte.

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