みんな私がそれを実行するとき、私は私のプログラムでこの本当に奇妙な欠点を抱えています。これは重要なコードです。
変数(編集):
const short int maxX = 100;
const short int maxZ = 100;
const short int lakeChance = 0.9;
addLake関数(編集):
void addLake(Sect sector[][maxZ], int x, int z){
sector[x][z].setMaterial(1);
}
主な情報源(編集):
//Generating land mass
for (int x = 0; x < maxX; x++){
for (int z = 0; z < maxZ; z++){
//Default material
sector[x][z].setMaterial(0);
//Add lake/sea source
int r = rand();
float r1 = (r % 1000);
float r2 = r1 / 1000;
if (r2 <= lakeChance) addLake(sector, x, z);
}
}
欠点は、「lakeChance」の値をどのように変更しても、結果はまったく同じように見えることです。addLake関数のように、lakeChanceの値を高く変更したにもかかわらず(つまり、0.5、0.7、0.9)、起動ごとに約3〜6回呼び出されるようです。この関数は、「lakeChance」の値を1に変更した場合にのみ呼び出されます。乱数ジェネレーターは正常に動作するため、結果は毎回多少異なります。