子序列的和
题目
输入两个正整数 n< m < 10^6, 输出 1/n^2 + 1/(n+1)^2 + ... + 1/m^2 ,保留5位小数。
输入包含多组数据,结束标记为 n = m = 0.
样例输入:
2 4
65536 655360
0 0
样例输出:
Case 1: 0.42361
Case 2: 0.00001
c实现
#include<stdio.h> int main() { int n,m; double s; while(true){ s=0.0; scanf("%d",&n); scanf("%d",&m); if(n==m&& m==0) break; else { for(int i=n;i<=m;i++) { s += 1.0/i/i; //printf(" s: %.5f\n",s); } printf("%.5f\n",s); } } } //子序列的和 //不能用s += 1.0/i*i 因为i*i会有溢出