c++100以内奇数之和小于2000但最接近于2000的这个奇数

来源:百度知道 编辑:UC知道 时间:2024/04/30 17:40:35

呵呵,楼上那位,楼主想可能是要某一个奇数,这个奇数在0到100之间,而从1加到这个奇数的和要小于并最接近2000,

#include<iostream>
using namespace std;
int main()
{
int i = 1;
int sum = 1;
while( sum < 2000 && i < 100 )
{
i +=2; //a
sum += i; //b
}
if ( sum > 2000 )
i -= 2; //c
cout<<"您所需要的奇数是:"<<i<<endl;
cout<<"sum="<<sum<<endl;
return 0;
}
默认将sum置为1,这样方便计算,如果将sum置为0,则应该将语句a和语句b交换,并且将语句c改成i-=4;(想想为什么)
最后,若sum>2000了,说明在1到100之间存在这个奇数。而若sum<2000则说明越接近越满足,所以应该是 i = 99这种情况。

100以内奇数之和为:
#include <iostream>
using namespace std;
int main()
{
int sum = 0;
for (int i=1; i<100; i=i+2)
{
sum = sum + i;
}
cout << "sum is: " << sum << endl;
}

最接进2000的奇数是1999,是不是要求素数?
如果是素数的话,如下:
#include <iostream>
#incldue