——————·今天距2021年304天·——————
这是ITester软件测试小栈第98次推文
01
第一题
使用while循环实现输出2 - 3 + 4 - 5 + 6 ... + 100 的和。
# !/usr/bin/python3
# -*- coding:utf-8 -*-
# @微信公众号:ITester软件测试小栈
# @Author:coco
# @Python交流群:604469740
# @Email:3593721069@qq.com
# @Software:PyCharm
#方法一
#从2开始计算
i = 2
#定义一个变量用于保存结果
sum=0
while i <= 100:
if i % 2 == 0:
sum = sum + i
else:
sum = sum - i
i += 1
print("2-3+4-5+6...+100=",sum)
#方法二
n=3
sum=2
while n<=100 :
#n对2取余
if n % 2 != 0:
sum = sum - n
n = n + 1
else:
sum = sum + n
n = n + 1
print("2-3+4-5+6...+100=",sum)
运行结果:
02
第二题
从键盘获取一个数字,然后计算它的阶乘,例如输入的是3,那么即计算3!的结果,并输出。
提示:
1!等于 1
2!等于 1*2
3!等于 1*2*3
n!等于 1*2*3*...*n
# !/usr/bin/python3
# -*- coding:utf-8 -*-
# @微信公众号:ITester软件测试小栈
# @Author:coco
# @Python交流群:604469740
# @Email:3593721069@qq.com
# @Software:PyCharm
n = int(input("请输入一个非负的数字:")) # 负数不算阶乘
def factorial(n):
if n == 0:
return 1 # 0的阶乘是1
else:
return n * factorial(n - 1)
if __name__ == '__main__':
result=factorial(n)
print("{}的阶乘为:{}".format(n,res