【问题标题】:Basic for/while loop questions基本的 for/while 循环问题
【发布时间】:2017-02-02 19:38:48
【问题描述】:

对python非常陌生,试图回答以下问题,但不知道如何处理它以便循环完成工作。

使用for循环或while循环计算5!

使用 for 循环或 while 循环计算 ∑ ???? 5 ???=1

使用 for 循环或 while 循环计算 ∏ ???? 9 ???=3

使用for循环或while循环计算??????3 8

这是我对第一个的回答,其余的回答类似。

for i in range (1,2):
  for_list = [3,4,5]
  sum_values = ((i+1)*i) * for_list[0] * for_list[1] * for_list[2]
  print (sum_values)

【问题讨论】:

  • 编辑您的帖子,使其更易于阅读,有一个code 格式化程序
  • 抱歉,没有意识到它是这样出来的,我编辑它应该更容易阅读,谢谢!
  • 这实际上并没有为任何事情使用循环,这里的“循环”可以很容易地替换为i = 1 并消除“循环”主体,它仍然可以工作。这里的前两个问题应该简化为accumulator = *somebasevalue*for i in range(1, 6):accumulator *someaccumulatingoperation* i。当然请注意,对于非学习相关的目的,您只需将math.factorial 用于#1 和(如果我没看错的话)sum 用于#2。

标签: python python-3.x loops


【解决方案1】:

要计算任何数字的阶乘,您可以定义一个看起来与此非常相似的函数

def factorial(n):
  result = 1
  for i in range(2,n+1):
    result *= i
  return result

因此,要使用上述函数来计算任何数字的阶乘,只需将该数字作为参数传递给函数,例如

print(factorial(5)) # 120

但是,如果你特别想计算 5 的阶乘,你可以有一个类似于这个的 for 循环

result = 1
for i in range(2,6):
  result = result * i

print(result)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-11-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-19
    • 2011-06-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多