0
次のコードスニップでは、何らかの理由でerorの値がFORループの外部に保持されません。変数の値が保持されていません
eror = 0 ;
for (i=0; i<n; i++)
{
predict = intercept + (slope * data[i][0]) ;
printf("In the FOR loop eror = %lf\n", eror) ;
eror +=(data[i][1] - predict) ;
}
printf("Out of FOR loop eror = %lf\n", eror) ;
出力の一部である...
In the FOR loop eror = -0.028400
In the FOR loop eror = -0.011216
In the FOR loop eror = 0.012196
In the FOR loop eror = 0.019527
In the FOR loop eror = 0.024293
In the FOR loop eror = 0.021309
In the FOR loop eror = 0.013337
Out of FOR loop eror = -0.000000
変数ERORは、FORループを抜けたらそこFORループ内の値であるが、ではない、なぜ誰も説明できますか?
**は**の値です。値は-0.000000 – immibis
eror + =(data [i] [1] -prediction); 'の後に最初の' printf'を置くと、おそらく同じ値が2回出力されます(サイクル1回とサイクル1回) – ingroxd
クイックレスポンスありがとう:) –