编写一个Python程序,输入N,返回N!的值?

编写一个Python程序,输入N,返回N!的值。

1. 采用循环的方法求解

def factorial(N):

    total = 1

    for i in range(1, N + 1):

        total = total * i

    return total

2. 采用函数式的方法求解

from functools import reduce

from operator import mul

def factorial(N):

    return reduce(mul, range(1, N + 1))

温馨提示:内容为网友见解,仅供参考
第1个回答  2019-10-24
#encoding=utf-8

num = int(input("请输入一个数字: "))
factorial = 1

# 查看数字是负数,0 或 正数
if num < 0:
print("抱歉,负数没有阶乘")
elif num == 0:
print("0 的阶乘为 1")
else:
for i in range(1,num + 1):
factorial = factorial*i
print("%d 的阶乘为 %d" %(num,factorial))

结果:
python3 a.py
请输入一个数字: 6
6 的阶乘为 720
第2个回答  2019-10-24
我也不懂后整个儿的
第3个回答  2019-12-24
x = 1
n = int(input("输入N:"))
for i in range(1, n + 1): x = x * i
print(x)
#希望以上的程序对你有所帮助,谢谢你的支持!

编写一个Python程序,输入N,返回N!的值?
from operator import mul def factorial(N):return reduce(mul, range(1, N + 1))

从键盘上输入n,编程求解n!并输出Σ(2*i-1)!
python n = int(input("请输入n的值:"))factorial = 1 sum = 0 for i in range(1, n+1):factorial *= i sum += (2*i-1)print("%d的阶乘为%d" % (n, factorial))print("Σ(2*i-1)!的值为%d" % sum)首先通过input函数从键盘上读取n的值,然后使用for循环计算n的阶乘和Σ(...

Python用while输入整数n,输出n编程
n=int(input("请输入要求累加到的数:"))sum=日for i in range(n+1): #实遍历sum += iprint(sum) 输出:媒介由内部到外部的传递过程。从内部送到外部。一般的输入输出设备有打印机、硬盘、键盘和鼠标。实际上,有些设备只有输入功能

python如何用循环求n!
方法一:使用循环计算阶乘和在循环中累加每个数的阶乘,如果阶乘和超过9999,则退出循环,返回上一次的结果。我们首先使用input()函数从用户那里获取一个正整数,并将其存储到变量n中。然后,我们将因子个数初始化为1,因为1本身是n的因子。初始化变量sum为0sum=0使用for循环求和foriinrange(1,n+1)...

用Python写程序:用户输入一个正整数N,计算从1到N(包含1和N)相加后...
1中N之和的公式为s=N(n1)\/2。这是一个自然数列。非负整数序列称为“自然数列”。从“1”开始,自然数从小到大排列。这是一组依次排列的所有自然数。python用户输入一个整数N,计算并输出1到N相加的和,请问这个程序错在哪里了?python 1到n偶数求和?N=int(input(“please input an integer...

用python编写一个小程序
def input_1():a = raw_input('Please input something:\\n')global st st = list(a)print 'Now the list you just inputted is:\\n',st success = True while success:input_1()for i in st:c = st.count(i)if c >= 3:print 'You lost!'print 'Error: The number of %s you ...

python求解?
因为一些事耽搁了回答,看到下边六个,一个把简单的问题写的这么复杂化,剩下的一堆不知所云。定义空的二维数组,然后赋值 import randomprint("输入n")n = int(input())if n >= 10: n=9_list = [[0 for i in range(n)] for i in range(n)]for i in range(n): for j ...

用python设计程序输入n个数,并计算平均值和最小值
include int main() {int x,i,n,min; printf("有几个数据:"); scanf("%d",&n); printf("请输入%d个数据:\\n"); scanf("%d",&x); min=x; for(i=2;i

Python编写程序,实现输入n个整数,输出最大的,并指出是第几个数?
a=list(eval(input(“请输入n个整数”)))b=max(a)c=len(a)for i in range(1,c+1):if a[i-1]==b:print("最大的数是%d,是第%d个数"%(b,i))

python输入整数n(n>=0),利用for循环和while循环求n
a=int(input("输入一个非负整数"))sum=1 for i in range(1,a+1):sum=sum*i print(sum)

相似回答