- 帖子
- 31
- 精华
- 0
- 积分
- 111
- 阅读权限
- 20
- 注册时间
- 2021-2-8
- 最后登录
- 2021-4-13
|
写了一下午和一晚上,总算把坑都给填完了
这个程序可以解决重复出现数字的问题
希望老师能看看,更欢迎提出建议和意见
谢谢啦- import random
- #从1~n中随机取m个数
- print('从1~n中随机取m个数')
- print('tips:m,n都必须为正整数且1≤m≤n')
- global m
- global n
- m = float(input('enter m:'))
- n = float(input('enter n:'))
- #此处暂时不转换为整数形式以防止输入内容不符合条件
- #下面这个while循环可以使m,n最终均为符合条件的值
- while (m<1) or (n<1) or (n<m) or (int(m % 1) is not 0) or (int(n % 1) is not 0):
- print('注意!m,n都必须为正整数且1≤m≤n!')
- m = float(input('enter m again:'))
- n = float(input('enter n again:'))
- if (1 <= m <= n) and (int(m % 1) is 0) and (int(n % 1) is 0):
- break
- m = int(m)
- n = int(n)
- result_list = []
- for i in range(m):
- result_list.append(random.randint(1, n))
- # print(result_list)
- #下面这个循环可以使结果中的数不重复
- while len(set(result_list)) < m:
- daiti = []
- for a in set(result_list):
- daiti.append(a)
- result_list = daiti
- result_list.append(random.randint(1, n))
- print('\n结果为:')
- print(result_list)
复制代码 |
|