LinqPadで実行した次のコードがあります。
void Main()
{
List<VariableData> outputVariableData =
new List<VariableData>();
for(int i = 1 ; i< 100; i ++)
{
outputVariableData.Add(new VariableData
{
Id = i,
VariableValue = .33
});
}
double result = outputVariableData.Average(dd=> dd.VariableValue);
double add = outputVariableData.Sum(dd=> dd.VariableValue)/99;
add.Dump();
result.Dump();
}
public class VariableData
{
public int Id { get; set; }
public double VariableValue{ get; set; }
}
結果
0.329999999999999
0.329999999999999
式=AVERAGE(A1:A101)を使用してExcelシートの同じ数値の平均を確認すると、そのまま.33が返されます。
実際、私はこのデータを使用してグラフを描画しており、平均値がグラフに表示されているため、グラフの描画が非常に少なくなり、グラフはそのようなタイプの値を管理できません。
私はこれら両方の出力について少し混乱しています、私は値を自動的に丸めるのに優れていると思います。だから私は私の拡張メソッドの出力が正しいという単純で少しばかげた質問がありますか?