御笔剑客 发表于 2017-12-17 01:13:57

这段代码哪里有问题?

#include <iostream>
#include <cstdio>
#include <cmath>
int judge(long long n);
using namespace std;
int main()
{
    long long m,n,oushu,jishu,temp;

    while(cin>>m>>n)
    {
      if(m>n)
      {
            temp=m;
            m=n;
            n=temp;
      }
      oushu=jishu=0;
      for(int i=m;i<=n;i++)
         {   if(judge(i))jishu+=pow(i,3);
            else oushu+=pow(i,2);
         }
    cout<<oushu<<" "<<jishu<<endl;
    }
return 0;
}
int judge(long long n)
{
    if(n%2!=0)return 1;
    else return 0;
}



为什么输入25 会计算出奇数的立方和为151,不应该是152吗?

qq1242009750 发表于 2017-12-18 09:11:57

27 + 125 = 152没毛病啊 老铁

御笔剑客 发表于 2017-12-18 12:00:23

qq1242009750 发表于 2017-12-18 09:11
27 + 125 = 152没毛病啊 老铁

为什么我的ide输出的是151{:10_266:}

sp1ral 发表于 2017-12-18 13:15:23

单步执行一下就可以看看哪里少了1,但是代码没有问题,我也不明白

qq1242009750 发表于 2017-12-18 14:58:44

sp1ral 发表于 2017-12-18 13:15
单步执行一下就可以看看哪里少了1,但是代码没有问题,我也不明白

{:5_95:} +1
页: [1]
查看完整版本: 这段代码哪里有问题?