2 u010178118 u010178118 于 2014.05.10 12:43 提问

n到m的平方分之一的和

输入两个正整数n<m<1000000,输出1/(n*n)+1/((n+1)*(n+1))+...+1/(m*m)
保留五位小数,注意:本题有数据陷阱。
输入要求:输入两个正整数n,m,用空格隔开
输出要求:保留五位小数
如: 2 4
0.42361

很简单的一个程序就是提交不过我的代码如下

#include
int main()
{
int n,m;
double sum=0.0;
scanf("%d%d",&n,&m);
if(n0)
{
for(int i=n;i<=m;i++)
{
sum+=1.0/(i*i);

}

printf("%.5lf\n",sum);

}

return 0;
}
输出结果也对,有什么数据陷进吗?为什么不对呢?

2个回答

zwwtj2014
zwwtj2014   2014.05.10 14:31

你输入m=999999试试,这是因为m*m超过了你的整数的存储范围

lym753024200
lym753024200   2014.05.10 16:59

先把分子1扩大些再累加求和,最后除回来就行了,免得下溢了

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
加1乘2平方
描述 给定两个正整数m、n,问只能做加1、乘2和平方这三种变化,从m变化到n最少需要几次   输入 输入两个10000以内的正整数m和n   输出 输出从m变化到n的最少次数   输入样例 1 16   输出样例 3 #include #include using namespace std; int m, n;
求1的方加上2的方一直加到N的方小于等于1000的N的值
{ int a,sum=0; for(a=1; ;a++) { sum+=a*a; if(sum<1000) continue; else if(sum==1000) cout<<a<<'\n'; else cout<<a-1<<'\n';// break; } cout<<'\n'; }
n的阶乘分之一求和;求更简单的方法。
#include int jiec(int n) {  int i,jiecheng=1;  for(i=1;i  jiecheng=jiecheng*i;  return  jiecheng;  } float sum(int i) {  float s=0;  int m;  for(m=1;m  s=s+(float)1/jiec(m);  printf("yt
1的平方加2的平方....一直加到n的平方和是多少?有公式吗
平方和公式n(n+1)(2n+1)/6 即1^2+2^2+3^2+…+n^2=n(n+1)(2n+1)/6 (注:N^2=N的平方) 证明1+4+9+…+n^2=N(N+1)(2N+1)/6  证法一(归纳猜想法): 1、N=1时,1=1(1+1)(2×1+1)/6=1  2、N=2时,1+4=2(2+1)(2×2+1)/6=5  3、设N=x时,公式成立,即1+4+9+…+x2=x(
平方和级数求和
证明函数的∑i=ni=0i2=n(2n+1)(n+1)6\sum_{i=0}^{i=n}i^2=\frac{n(2n+1)(n+1)}{6}用差分方程解释: y(n)−y(n−1)=n2y(n)-y(n-1)=n^2 y(n−1)−y(n−2)=(n−1)2y(n-1)-y(n-2)=(n-1)^2 y(n−2)−y(n−3)=(n−2)2y(n-2)-y(n-3)=(n-2)^2 ….
求平方与倒数序列的部分和
本题要求对两个正整数m和n(m≤n)编写程序,计算序列和m​2​​+1/m+(m+1)​2​​+1/(m+1)+⋯+n​2​​+1/n。输入格式:输入在一行中给出两个正整数m和n(m≤n),其间以空格分开。输出格式:在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后六位。题目保证计算结果不超过双精度范围。输入样例:5 10 输出样例:sum = 355.845635 #inclu...
算法竞赛入门经典:第十章 数学概念与方法 10.2无平方因子的数
/* 无平方因子的数: 给出正整数n和m,区间[n,m]内的“无平方因子”的数有多少个?整数p无平方因子当且仅当不存在k>1,使得p是k^2的倍数。1<=n<=m<=10^12,m-n<=10^7 分析: 需要判断10^7个整数,每个整数需要时间判断是否没有平方因子。 方法: 利用素数筛选法,对不超过n的每个非负整数p,删除2p,3p,..,当处理完所有数之后,还没有被删除的就是素
无平方因子的数(数论好题)
题目:(题目跟分析基本都是书上,我只是敲几个代码跟大家分享) 无平方因子的数。 给出正整数n,m。区间[n,m]内  “无平方因子” 的数有多少个?? 整数p无平方因子,当且仅当不存在k>1,使得p是k^2的倍数.    1 分析:      直接枚举肯定会超时,      使用的方法和筛选素质类似的,对于不超过 sqrt(m)的所有素数p,筛掉区间[n,m]内p^2的倍数    
无平方因子的数(数论初步) By ACReaper
题目: 给出正整数n和m,区间[n,m]内的“无平方因子”的数有多少个?整数p无平方因子当且仅当不存在k > 1,使得p是k * k的倍数。1 思路分析:   分析最坏情况[1, 10 ^ 12],如果一个个判断的话,显然时间太大,就算如题意m - n最大值为10 ^ 7,那样也会超时,所以我们考虑其它方法,即筛选法,考虑这中方法时,我们要把题目中的条件做一下逆向转换,也就是说对于
【数论】无平方因子的数
题目描述: 给出正整数nn和mm,区间[n,m][n, m]内的“无平方因子”的数有多少个?整数pp无平方因子当且仅当不存在 k>1k > 1,使得pp是k2k^2的倍数。分析:直接看http://blog.csdn.net/jeremygjy/article/details/46049187就好了实际上是一样的问题不一样而已#include <bits/stdc++.h> using names