char Oprt;
cout << "\nPlease enter first number: ";
cin >> num1;
cout << "Please enter second number: ";
cin >> num2;
cout << "Now please enter operator: ";
cin >> Oprt;
while (Oprt != '+' && Oprt != '-' && Oprt != '*' && Oprt != '/')
{
cout << "Wrong Operator please enter again: ";
cin >> Oprt;
}
此代码打印出类似:
的内容import random
def lottery(lucky_numbers, run):
i = 0
while i < run:
x = random.uniform(0, 1) #prints out a random number between 0 and 1
numbers = lucky_numbers
NewNumbers = numbers[-1:] + numbers[:-1] #shifts each element in the to the right
lucky_numbers = NewNumbers
print(lucky_numbers, x)
i += 1
lottery([1, 2, 0], 3)
x值总是不同,因为它们是介于0和1之间的随机数。
我试图添加一个函数,说明如果x是循环中的最小值(min),那么程序应该打印该迭代的列表,例如在这种情况下,此循环中x的最低值是0.33016179 ..,程序应该打印列表[0,1,2]
答案 0 :(得分:1)
我只是将信息保存在变量中并在循环结束后打印出来:
import random
def lottery(lucky_numbers, run):
i = 0
min_x = 1
while i < run:
x = random.uniform(0, 1) #prints out a random number between 0 and 1
numbers = lucky_numbers
NewNumbers = numbers[-1:] + numbers[:-1] #shifts each element in the to the right
lucky_numbers = NewNumbers
if x < min_x:
min_x = x
min_lucky_numbers = lucky_numbers
i += 1
print(min_lucky_numbers, min_x)
lottery([1, 2, 0], 3)
答案 1 :(得分:1)
您可以创建一个&#34;缓存&#34;存储所有x
值然后调用最低值。
cache = []
for _ in range(3):
x = random.uniform(0, 1)
cache.append(x)
print min(cache)
答案 2 :(得分:0)
要做你想做的事,你只需将你的物品存放在两个不同的列表中,对它们进行排序并显示每个列表中的第一个元素:
import random
luckiest_num = list()
luckiest_list = list()
def lottery(lucky_numbers, run):
i = 0
while i < run:
x = random.uniform(0, 1)
numbers = lucky_numbers
NewNumbers = numbers[-1:] + numbers[:-1]
print(NewNumbers, x)
i += 1
luckiest_num.append(x)
luckiest_list.append(NewNumbers)
lottery([1, 2, 0], 3)
luckiest_num.sort()
luckiest_list.sort()
print ("The luckiest item is : ")
print(luckiest_num[0],luckiest_list[0])