2013-01-31 2 views
0

그래서를 heres 내 스크립트에 대한중첩 된 경우에 문 루프

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); 

이 텍스트 파일 메신저 로딩에 음의 값은 내가 단지 긍정적 인 것들을 요약하면 원하는하지만 여전히 모든 값의 합계를 구합니다.

답변

1

당신은 개인적으로 내가 해요하지만 변수 이름으로, 매트랩 내장 함수의 이름과 같은 sum를 사용하여이 자초하고 있다고 생각

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

같은 것을 사용하여 루프를 대체 할 수 귀하의 경우에 문제가 발생했는지 확실하지 않습니다. 그래서 내 진술의 lhs는 변수 total입니다.

+0

실제로 lhs는 질문과 일치하도록 'TP'로 지정해야합니다. 그냥 sayin ':) (nitpicking에 대한 유감 ...) –

+0

당신은 @EitanT 맞아요,하지만 내 코드가 아니 지옥, OP 자신을 위해 밖으로 그 그림하자. –