发现以前写的算法,过段时间不去看竟然忘得一干二净。
使用c语言写的,算是做个记录,免得以后忘记。
#include <math.h>
#include <time.h>
#include <stdlib.h>
int GetRand()
{
int sum = 4,number = 0,tem = 0;
int arrr[10];
memset(arrr,-1,10 * 4);
bool isFirst = true;
srand(time(NULL));
while (sum > 0)
{
tem = rand() % 10;
if (arrr[tem] == -1)
{
if (tem == 0)
{
if (isFirst);
else
{
arrr[tem] = tem;
sum --;
}
}
else
{
arrr[tem] = tem;
number += tem * pow(10.0,sum - 1);
isFirst = false;
sum --;
}
}
}
return number;
}