Python中的输出扩展和和反向扩展和

时间:2018-05-09 14:02:28

标签: python function loops boolean

我正在尝试编写一个函数,根据用户在Python中的输入显示扩展的和和反向扩展的和,如下所示:

def printSum(int n, boolean reverse):

如果用户输入整数4,'true',则输出为:

1+2+3+4 = 10

或者,如果用户输入整数4,'false',则输出为:

4+3+2+1 = 10

我知道反转给定整数的代码,

def reverse_int(n):
    Reverse = 0

    while(n > 0):
        Reminder = n %10
        Reverse = (Reverse *10) + Reminder
        n = n //10

    print("\n Reverse of entered number is = %d" %Reverse)

但我不确定如何将其应用于上述扩展/反向扩展和函数。任何意见都将不胜感激。

1 个答案:

答案 0 :(得分:0)

您不必反转数字,而是使用range指定输出的顺序(向前和向后):

def printSum(n, reverse):
    s = sum(range(n+1))
    if reverse:
        print('+'.join(str(i) for i in range(1, n+1)) + ' = ' + str(s))
    else:
        print('+'.join(str(i) for i in range(n, 0, -1)) + ' = ' + str(s))

printSum(4, True)
# 1+2+3+4 = 10

printSum(4, False)
# 4+3+2+1 = 10