高校のクラス割り当てをコーディングするときに、私はrand()を使用して静的結果を作成していることに気付きました。私のコードは、配列のための9つの乱数を作成し、それらを追加しています。rand()奇妙な結果を作成
#include <string>
#include <iostream>
#include <iomanip>
#include <cstdlib>
#include <ctime>
using namespace std;
int main() {
srand(time(NULL));
int array[]={0};
int i = 0;
while (i<9){
array[i]={rand()};
i++;
}
int loop=0;
int sum=0, num=0;
while (num<9){
cout<<"Value "<<num<<": "<<array[num]<<"\n";
sum=sum+array[num];
num++;
}
cout<<"Sum of all values: "<<sum<<"\n";
return 0;
}
このコードを使用すると、一部の値は同じように見え、他の値は最後と似ています。
Image1 Image2 Image3あなたが値0と3を見れば、彼らは常に4桁の数字を持っている、そして値1は常に0値2は常に2、残りがいかにのようにランダムであるように思われます。なぜこのようなことが起こっているのか?
下記参照 'rand'は吸います。 'rand'の実装にはいくつかの特典があります。このコースを補完するために、この10年からC++の本を手に入れる時間。 –
配列のサイズを9にしようとしてください(実際にそうであるように): 'int array [9] = {0};' – scohe001
あなたは 'rand()'を余儀なくされましたか?最新の ''ライブラリは、あらゆる方法で優れています。 –
Frank