0

これが私のスクリプトです

function printPower

sum=0;
filename=input('Enter a filename: ','s');
power=load(filename);
for i=1:length(power);
    if power(i)>=0;    
        sum=sum+power(i);
    end
    TP=sum/24;
 end
 fprintf('Total power: %.1f kWh.\n', TP);

読み込み中のテキスト ファイルに負の値があり、正の値のみを合計したいのですが、それでもすべての値を合計します。

4

1 に答える 1

1

ループを次のようなものに置き換えることができます

total = sum(power(power>=0))/24

個人的には、Matlabの組み込み関数の名前(などsum)を変数名として使用することは、問題の原因かどうかはわかりませんが、問題を引き起こしているだけだと思います。そのため、私のステートメントのlhsは変数ですtotal

于 2013-01-31T16:43:49.210 に答える