生成0~100之间的10个随机数,要求真随机
时间: 2023-09-01 08:10:45 浏览: 156
生成0~100之间的10个真随机数需要使用随机数生成器。以下是Python代码实现:
```python
import random
random.seed() # 初始化随机数生成器
for i in range(10):
rand_num = random.randint(0, 100) # 生成0~100之间的随机整数
print(rand_num)
```
每次运行上述代码都会得到不同的10个随机数。
相关问题
输入一个1~100之间的正整数N以N为随机数种子随机生成一个不大于N的正整数M
好的,让我来回答你的问题。以下是生成随机数的代码:
```python
import random
N = int(input("请输入一个1~100之间的正整数N作为随机数种子:"))
random.seed(N)
M = random.randint(1, N)
print("生成的随机数为:", M)
```
希望这个代码可以帮到你!
用C语言生成0~999 999(均包含,或者更大范围)之间的随机整数20 000个,要求随机数都不相同(如相同,则需要去重复并重新生成当前随机数),即,得到20 000个两两不同的随机数。
可以使用C语言中的rand()函数生成随机数,但是需要注意的是,rand()函数生成的随机数是伪随机数,即它们是通过一定的算法计算出来的,并不是真正的随机数。如果要避免重复的随机数,可以将生成的随机数存入一个数组中,每次生成新的随机数时,都要检查数组中是否已经存在相同的随机数。
以下是实现的代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define MAX_NUM 1000000 // 生成随机数的最大值
#define ARRAY_SIZE 20000 // 数组大小
int main() {
int arr[ARRAY_SIZE] = {0}; // 存储随机数的数组
int i, j, num;
srand((unsigned) time(NULL)); // 设置随机数种子
for (i = 0; i < ARRAY_SIZE; i++) {
num = rand() % MAX_NUM; // 生成随机数
for (j = 0; j < i; j++) { // 检查数组中是否已经存在相同的随机数
if (arr[j] == num) {
i--; // 如果存在相同的随机数,重新生成当前随机数
break;
}
}
arr[i] = num; // 将不重复的随机数存入数组
}
for (i = 0; i < ARRAY_SIZE; i++) {
printf("%d ", arr[i]); // 输出随机数
}
printf("\n");
return 0;
}
```
该程序使用srand()函数设置随机数种子,以确保每次运行程序都能生成不同的随机数序列。在生成随机数时,使用取模运算将生成的随机数限制在0~999 999之间。循环检查数组中是否已经存在相同的随机数,如果存在相同的随机数,则重新生成当前随机数。最终将生成的随机数存入数组,并输出到屏幕上。
阅读全文