celica件名の内容で質問させて頂きます。繰り返し演算を行うことで平均結果が徐々に増加する現象が発生してしまいました。このプログラムでは積算結果がリセットされないため、浮動小数点同士の加減算による情報落ちが蓄積されることが原因だと思いますが、平均結果が元データの範囲を超えて徐々に増加する原因について理解出来ずにいます。原因が分かる方がいらっしゃいましたらご教授いただけないでしょうか。※instDataのランダム値は正規分布ではありません。結城紬celicaさん、こんにちは。celicaご返信頂き、有難うございます。実際のプログラムはもう少し複雑で、記載させて頂いたプログラムは簡略化したものになります。最終的には演算結果が元々のランダムデータの最大値100.1を超えて増加していくようなイメージです。avgData[avgPtr])の情報落ちが四捨五入(avgSumDataが真値より大きくなったり、小さくなったりする)という処理が行われていると徐々に増加すると考えましたが、float型の有効数字桁以外の処理がどうなっているのかが分からず、このような現象が起こり得るのかどうか、というのが疑問点になります。かずまその簡略化したプログラムは間違っています。割った平均値は小さなものとなります。100個の平均を求めるのであれば、それは問題ではありません。1個を計算対象から外して平均を求めています。1個を引いてください。しても質問にある現象は再現しません。現象が再現する簡略化プログラムを提示してください。celicaご返信有難うございます。遅くなりましたが、再現する簡易プログラムを以下に記述します。遅くなりましたが、再現する簡易プログラムを以下に記述します。100;}既に指摘しました。99個しかありません。割ったら、結果が小さくなるのは当然です。次のように、割ってから引いてください。avgResultが99999.5未満の数字になり、徐々に減っていく現象が発生}最初の質問の現象と違いますね。繰り返し演算を行うことで平均結果が徐々に増加する現象が発生してしまいました。かずまひとつ言っておきます。7桁の制度しかありません。あたりの入力データを引いて足しても、小数点以下は桁落ちにより変化しません。することをお勧めします。約16桁の精度があります。celicaかずまさん、早速のご回答ありがとうございます。以下、ご指摘頂いた点に対して回答いたします。99個しかありません。割ったら、結果が小さくなるのは当然です。分母は100で問題ないと考えています。>最初の質問の現象と違いますね。混乱させて申し訳ございません。実際のプログラムは簡略化したプログラムよりも複雑になっており、そのプログラムでは増加現象が発生しています(増加現象が再現できるプログラムを作成したかったのですが、減少するプログラムしか作成出来ませんでした)。増加・減少の違いも気にはなっているのですが、平均結果が元データのバラつき範囲外になることが疑問点です。floatの精度についても、doubuleにすれば改善することも承知しておりますが、この疑問点を解消したくて投稿させて頂きました。分母は100で問題ないと考えています。10個を与えてみましょう。引いてから、割るとどうなるか。