Как мне добавить их в словари и сделать активную переменную концом после каждых 5 циклов в python? - PullRequest
0 голосов
/ 22 октября 2019

Напишите программу, которая запрашивает число и печатает, является ли число четным или нечетным (например, доска для рулетки):

  • Отслеживайте числа и ответы
  • После каждогорезультат, отображать сводку предыдущих результатов
  • После каждого результата программа также должна сообщать медианное число
  • Программа должна прекратить использование активной переменной после ее запуска пять раз
  • Программа должна завершиться при вводе quit
  • Программа должна завершиться при вводе 0

Это проблема, которую мне было предложено сделать. Я могу сделать простой, но я не уверен, как вычислить медиану или сделать так, чтобы активная переменная являлась конечной переменной после того, как она выполняется пять раз.

odd = []
even= []

number=input("Enter a number, I will tell you if it's odd or even: ")
number = int(number)

while True:
    if number % 2 == 0:
        print("\nThe number" + str(number) + "is even.")
        even[number] = number
        print(even)
        print(median(even))
    elif number == 'quit':
        print('Done')
        break
    elif number == 0:
        print('Done')
        break
    else:
        print("\nThe number" + str(number) + "is odd.")
        odd[number] = number

1 Ответ

0 голосов
/ 22 октября 2019

Не уверен, почему или как вы будете использовать словарь в этой ситуации, если вы можете дать мне знать, какими будут ваши «ключ» и «значение»?

Ваш тип «нечетный» и «четный»являются списками, вы должны использовать odd.append или even.append для добавления результатов в каждый список.

Вместо двух переменных 'number' вы можете сделать следующее:

number = int(input("Enter a number, I will tell you if it's odd or even."))

Медиана - это средняя точка последовательности, расположенная от наименьшего к наибольшему. Приведенный ниже пример поможет вам найти медиану, если длина вашего списка четного числа, попробуйте наложить на цифру, если длина вашего списка нечетного числа.

median = 0
my_list = [4, 2, 8, 6]
my_list.sort() #As mentioned, median requires a sorted list

if len(my_seq)%2==0:
    seq=(len(my_seq))/2
    seq_1=my_seq[int(seq-0.5)]
    seq_2=my_seq[int(seq+0.5)]
    median+=(seq_1+seq_2)/2
    print ('Length of this list is even, median of this list is {}'.format(median))

Дайте мне знать, если у вас есть другие вопросы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...