鱼C论坛

 找回密码
 立即注册
查看: 3739|回复: 6

[已解决]python问题求助

[复制链接]
发表于 2022-10-8 23:15:42 | 显示全部楼层 |阅读模式
8鱼币
这一道题,除了while循环外。能不能用 for 循环语句或者是其他方法来做?
最佳答案
2022-10-8 23:15:43
本帖最后由 jackz007 于 2022-10-9 12:27 编辑

        for 循环
  1. m = 1
  2. for k in range(int(input('输入 n : ')) , 0 , -1) : m *= k
  3. print(m)
复制代码

        递归函数
  1. def foo(n) : return n * foo(n - 1) if n else 1
  2. print(foo(int(input('输入 n : '))))
复制代码
1.png

最佳答案

查看完整内容

for 循环 递归函数
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2022-10-8 23:15:43 | 显示全部楼层    本楼为最佳答案   
本帖最后由 jackz007 于 2022-10-9 12:27 编辑

        for 循环
  1. m = 1
  2. for k in range(int(input('输入 n : ')) , 0 , -1) : m *= k
  3. print(m)
复制代码

        递归函数
  1. def foo(n) : return n * foo(n - 1) if n else 1
  2. print(foo(int(input('输入 n : '))))
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2022-10-9 00:14:07 | 显示全部楼层
  1. n=int(input('请输入一个非负整数:'))
  2. result=1
  3. a=n
  4. if a==0:
  5.     result=1
  6. elif a<0:
  7.     print('请输入非负整数!')
  8. else:
  9.     while a>0:
  10.         result=result*a
  11.         a-=1
  12.         
  13. print(f'{n}!的结果为{result}')
复制代码

评分

参与人数 1荣誉 +4 鱼币 +5 贡献 +2 收起 理由
2397293790 + 4 + 5 + 2

查看全部评分

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2022-10-9 00:21:26 | 显示全部楼层
还可以用迭代的方法
  1. def jiecheng(n):
  2.     if n>1:
  3.         return n*jiecheng(n-1)
  4.     else:
  5.         return 1
  6.    
  7. n=int(input('请输入一个非负整数:'))

  8. if n==0:
  9.     result=1
  10. elif n<0:
  11.     print('请输入非负整数!')
  12. else:
  13.     result=jiecheng(n)
  14.         
  15. print(f'{n}!的结果为{result}')
复制代码

评分

参与人数 1鱼币 +5 收起 理由
2397293790 + 5

查看全部评分

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2022-10-9 01:35:52 | 显示全部楼层
lassiter 发表于 2022-10-9 00:21
还可以用迭代的方法

lz问的是用for怎么写啊
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2022-10-9 07:39:42 From FishC Mobile | 显示全部楼层
递归法
def solve(n):
    if n==0:return 1
    return solve(n-1)*n

solve(int(input()))

评分

参与人数 1鱼币 +4 收起 理由
2397293790 + 4

查看全部评分

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2022-10-9 10:53:46 | 显示全部楼层
可以用通项公式
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-4-26 07:56

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表