Фактическим типом t
является int[10]
, поэтому &t
является адресом массива. Кроме того, int[]
неявно преобразуется в int*
, поэтому t
преобразует в адрес массива как первый элемент массива.
Я не знаком с тем, как работает лотерея. Я предполагаю, что все номера, включая дополнительный номер, взяты из одного набора без замены. Если это правда, этот код должен помочь вам:
import random
numbers = list(range(1, 51)) # include 50
random.shuffle(numbers)
print(numbers[:6]) # pick the first 6 numbers (5 + 1 additional number) in the randomize list
Если ваш дополнительный номер взят из отдельного набора, сделайте следующее:
import random
numbers = list(range(1, 51)) # include 50
random.shuffle(numbers)
# pick the first 5 from the randomized list:
picks = numbers[:5]
# select from remaining numbers those that are less than or equal to 20:
picks.append(random.choice([n for n in numbers[5:] if n <= 20]))
print(picks)