processingで平均値を求める
Posted: 2014年2月27日(木) 18:27
Processingを習い始めました。
下記のコードは、0から100の値の乱数をnumber回発生させ、その平均値をウィンドウに表すと言った内容です。
ウィンドウに値は表示されるのですが、平均値が正しくありません。
なぜなら1000000回、0~100の乱数を発生させた時の平均値が103を超えてしまうからです。
下記のコードでどこに問題があるかご教授頂けないでしょうか?
よろしくお願い致します。
下記のコードは、0から100の値の乱数をnumber回発生させ、その平均値をウィンドウに表すと言った内容です。
ウィンドウに値は表示されるのですが、平均値が正しくありません。
なぜなら1000000回、0~100の乱数を発生させた時の平均値が103を超えてしまうからです。
下記のコードでどこに問題があるかご教授頂けないでしょうか?
よろしくお願い致します。
void setup(){
size(400,400);
background(245);
noLoop();
}
double avgrand(double n){
double i;
for (i=0;i<n;i++){
x=x+random(0,100);
}
return x/n;
}
void draw(){
float y;
double [] number = {12345, 54321, 234567, 765432, 1000000};
String strn2="";
for (int p = 0; p < number.length; p++){
y=(float)avgrand(number[p]);
strn2=nf(y,1,6);
fill(0,145,0);
textSize(32);
if(number[p] == 12345){
text(strn2,width/4,height/5);
}else if(number[p] == 54321){
text(strn2,width/4,height*2/5);
}else if(number[p] == 234567){
text(strn2,width/4,height*3/5);
}else if(number[p] == 765432){
text(strn2,width/4,height*4/5);
}else{
text(strn2,width/4,height*5/5);
}
}
}