一道关于python题?

【程序设计】
---------------------------------------------------------
题目:请编写fun函数,其功能是:用While循环语句求1到n之间
(包括n)能被3整除的所有整数之和,并将结果返回给主函
数。(n值由用户输入)
例如:运行程序后若输入:10,则输出为:18
---------------------------------------------------------
注意:部分源程序给出如下。请勿改动主函数main和其它函数中的
任何内容,仅在函数的注释标志之间填入所编写的若干语句。
------------------------------------------------------'''
def fun(n):
#**********Program**********

#********** End **********
def main():
print("【请分别三次计算问题:】")
for i in range(3):
print("【第%d次:】" %(i+1))
n = int(input("【请输入一个大于1的正整数n:】"))
print("【1到"+str(n)+"之间能被3整除的所有整数之和为:】",fun(n))
if __name__ == '__main__':
main()

def fun(n):
#**********Program**********
s=0
i=3
while i<=n:
print(i,end=" ") #输出3的倍数,测试过程,正式提交程序时要删除。
s+=i
i+=3
return s
#********** End **********
def main():
print("【请分别三次计算问题:】")
for i in range(3):
print("【第%d次:】" %(i+1))
n = int(input("【请输入一个大于1的正整数n:】"))
print("【1到"+str(n)+"之间能被3整除的所有整数之和为:】",fun(n))

if __name__ == '__main__':
main()追问

感谢感谢

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-06-18
def fun(n):
#**********Program**********
sum = 0
count = 1
while count <= n:
if count % 3 ==0:
sum += count
count += 1
else:
count += 1
return sum
#********** End **********
def main():
print("【请分别三次计算问题:】")
for i in range(3):
print("【第%d次:】" %(i+1))
n = int(input("【请输入一个大于1的正整数n:】"))
print("【1到"+str(n)+"之间能被3整除的所有整数之和为:】",fun(n))
if __name__ == '__main__':
main()
相似回答