Сумма четных и нечетных чисел включает числа вне диапазона, если не четное или нечетное - PullRequest
0 голосов
/ 13 февраля 2019

так что это мой первый семестр, изучающий информатику и в настоящее время изучающий Python.Моим заданием было создать программу, показывающую суммы как нечетных, так и четных чисел между целыми числами по вашему выбору.Это почти работает, за исключением того факта, что он добавляет число, определенное как диапазон, а не только шансы или четности внутри.Кто-нибудь может указать, что я делаю неправильно?Я застрял на этом немного сейчас.Спасибо за помощь!

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

enter code here
print("Welcome to my Odd/Even sum generator.")
print("This program will show you the sum of all even and odd numbers between two integers of your choice.")
Num1 = int(input("What is your first, lower integer?"))
Num2 = int(input("What is your second, higher integer?"))


def sum_even(Num1, Num2):
    count1 = 0
    for i in range(Num1, Num2+1):
        if(i % 2 == 0):
            count1 += i
    return count1

def SumOdds(Num1,Num2):
  count2= Num1 + Num2 
  for i in range(Num1,Num2+1):
     if(i == Num1 or i == Num2):
         pass
     elif (int(i%2==1)):
        count2=count2+i

  print("The sum of the odd numbers is",(count2),".")
SumOdds(Num1,Num2)
print("The sum of the even numbers is",(sum_even(Num1, Num2)),".")

Я хочу, чтобыдобавляйте значения диапазона ТОЛЬКО, если эти значения диапазона применяются к нечетной / четной сумме.Скажем, я ввел диапазон от 5 до 25. Я бы хотел, чтобы значения диапазона были включены в сумму для моего OddSum, но не для EvenSum.

1 Ответ

0 голосов
/ 13 февраля 2019

Ваша проблема в том, что вы поместили следующий код в ваши SumOdds.

for i in range(Num1,Num2+1):
     if(i == Num1 or i == Num2):
         pass

Это пропускает первое и последнее числа, но если вы переместите его в sum_evens, ваш код должен работать так, как вы ожидаете.

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