C++:C++在图片特定区域之外产生随机数

           参考原文:C++产生随机数  (整数)

           C++在图片特定区域之外产生随机数,避开正则表达式,可以分为两种情况。

           第一种:在某个数之前生成随机数;第二种,生成随机数,加上某个数,然后截断;第三种,指定范围内生成随机数;


1.在某个数之前生成随机数

int Thres; //产生[0, dis)之间的随机数,注意不包括dis
printf( "%d\n", Random( Thres ) );

2.在两个数之间生成随机数

int Random(int m, int n)
{
		int pos, dis;
		if (m == n){
			return m;
		}
		else if (m > n){
			pos = n;
			dis = m - n + 1;
			return rand() % dis + pos;
		}
		else
		{
			pos = m;
			dis = n - m + 1;
			return rand() % dis + pos;
		}
}

测试代码:

int TestRand(int argc, _TCHAR* argv[])
{
		srand((int)time(NULL));//用于随机 随机种子
		int m = 7;
		int n = 23;
		for (int i = 0; i < 100; ++i)
		{
			float f = Random(m, n);
			std::cout << f << std::endl;
		}
		return 1;
}


产生浮点数随机数


posted @ 2017-03-27 10:55  wishchin  阅读(260)  评论(0)    收藏  举报