本题要求对两个正整数m和n(m≤n)编写程序,计算序列和m2+1/m+(m+1)2+1/(m+1)+⋯+n2+1/n。
输入格式:输入在一行中给出两个正整数m和n(m≤n),其间以空格分开。
输出格式:在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后六位。题目保证计算结果不超过双精度范围。
输入样例:5 10
输出样例:
sum = 355.845635
解析:
观察序列 m^2+1/m + (m+1)^2+1/(m+1) + ⋯ + n^2+1/n ,第一个m可看作m+0,后面的m值不断递增(递增值为1)其余的不变,最后把每一项都相加就可以得到结果,注意输出格式就行
解题:
# 数据输入
m, n = map(int, input().split())
# 计算序列
sums = sum([(m + i) ** 2 + 1 / (m + i) for i in range(n - m + 1)])
# 打印结果
print('sum = %.6f' %(sums))
如有更好的建议请评论!!!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)