現在C++の関数を自作しており、取得した値に対しランダム関数を用い、値の更新を行う関数を作成しています
作成した関数は以下の通りです。
int getrandom(uchar x){
srand(time(NULL));
int pattern = rand() % 21 - 10;
int x1 = x;
x1 = x1 + pattern;
return x1;
}
対象を画像ピクセルの値としているため読み込みをucharとしており、その値へint型で発生するランダム値を加算してint型でmainへと返すものにしています。そのために一度”int x1 = x;”という式を組み込んでいます。
ここで,毎回入力する値のxがprintfで出力すると,x=0の時にランダム関数で発生する値がマイナスとなります。
これは偶然なのでしょうか?毎回マイナス値となるのはおかしいと思い質問しました。何か解決策をご存知の方、お答えいただければと思います。
よろしくお願いします。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/10/18 07:48
2017/10/18 07:53
2017/10/18 12:37
2017/10/18 13:21