【题目描述】
输入两个正整数n和m,(n<m<106),输出1/n2 + 1/(n+1)2 + ... + 1/m2,保留5位小数。输出包含多组数据,结束标记为n=m=0。提示:本题有陷阱。
【样例输入】
2 4
65536 655360
0 0
【样例输出】
0.42361
0.00001
【代码示例】
#include<cstdio> #include<cmath> using namespace std; int main(){ int m, n; double sum; long long t; // long long 范围是19位数字。 while(scanf("%d %d", &n, &m)==2 && m!=0 && n!=0){ sum=0; for(int i=n; i<=m; i++){ t = pow(i,2); // 必须保证结构为long long类型。 sum += 1.0/t; } printf("%.5lf", sum); } return 0; }
标签:int,sum,样例,long,subsequence,&&,序列,include From: https://www.cnblogs.com/dks0313/p/16708669.html