from random import randint
i=int(input('Type the limit: '))
oddNumbers=[]
evenNumbers = []
greatestNumb = 0;
for j in range(15):
n=randint(0,i)
if n % 2 == 0:
evenNumbers.append(n)
else:
oddNumbers.append(n)
if n > greatestNumb:
greatestNumb = n
print(oddNumbers)
print(evenNumbers)
print(greatestNumb)
import numpy as np
userlimit = int(input('Type the limit: '))
list1 = np.random.randint(0, userlimit + 1, 15)
oddlist = [x for x in list1 if x%2!=0]
evenlist = [x for x in list1 if x%2==0]
print(f'event list: {evenlist} ')
print(f'length of evenlist:{len(evenlist)}, its max number = {max(evenlist)}')
print(f'odd list: {oddlist} ')
print(f'length of oddlist:{len(oddlist)}, its max number = {max(oddlist)}')
输出:
Type the limit: >? 10
event list: [6, 4, 4, 6, 8]
length of evenlist:5, its max number = 8
odd list: [1, 3, 3, 5, 1, 5, 3, 1, 7, 1]
length of oddlist:10, its max number = 7
您的代码中有很多问题,但您走的是正确的道路。你知道吗
首先,如上所述,您希望在循环中使用除i以外的其他变量,因为您希望保留用户给您的限制。你知道吗
其次,您希望从0开始并在用户输入处结束,因此randint()应该从0到用户输入。你知道吗
第三,为了判断一个数字是偶数还是奇数,提示告诉你该怎么做。n%2意味着如果你把一个数除以2,n%2就是它的余数。如果n%2==0,则将其放入偶数数组中。如果不是,则将其放入奇数数组中。你知道吗
最后,为了跟踪最大值,只需将一个数字(greatestVal)初始化为零,然后在循环中检查随机生成的数字是否大于greatestVal。你知道吗
代码如下,但请理解这些更改来自何处。你知道吗
编辑:一些语法错误
这里有一个使用numpy的解决方案:(我不理解你的第三部分)
输出:
相关问题 更多 >
编程相关推荐