编程求100以内能被7整除的自然数之和 5

 我来答
百度网友66a8d48e5
2011-10-16 · TA获得超过7687个赞
知道大有可为答主
回答量:3002
采纳率:12%
帮助的人:3899万
展开全部
不用编程,可以手工计算的。
15*7>100>14*7
结果就是(1+2+.....+14)*7
也就是[(1+14)*14/2]*7=15*7*7=735。
编程时可以考虑使用这种思路,速度快的。以C#编程。
public int getNum(int num,int last)
{
int temp =0;
for(int i = 1 ;i<=last;i++)
{
if(i%num==0)
temp+=i;
}
return temp;
}
显然这样的速度是较慢的,有人可能会发现如果整除时,每隔num个就会整除一下!那么这样写也是无可厚非了:
public int getNum(int num,int last)
{
int temp =0;
for(int i = 0 ;i<=last;i+=num)
{
temp+=i;
}
return temp;
}
先找出第一个能整除7的数,虽然0在这里不合题意,但反正0加上也不多,也可以得出正确的结果的。不过速度要比上一个快的多。那么这样写也是无可厚非的:
public int getNum(int num,int last)
{
int temp = last/num;
return (temp+1)*temp*num/2;
}
反正商是一个一个地增加嘛!也是符合题意的。只是说编程,又没有说一定要用什么,所以分析一下问题,以最快的方式运行才是实际应用的编程,如果只会第一种方法,那么,也就教教学而已,写软件估计差点。

调用是 int result = getNum(7,100);result就是你要的结果,至于用哪个方法自己想吧。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lix_xu
2011-10-15 · TA获得超过1213个赞
知道小有建树答主
回答量:823
采纳率:0%
帮助的人:695万
展开全部
Python:
print sum((i for i in xrange(100) if i % 7 == 0))
更多追问追答
追问
c++写
#include
void main()
{
int sum;
for(int i=0;i<100;i++);
if(i%7==0)
sum+=i;
cout<<"sum="<<sum<<endl;
}
错了哪里
追答
for后面的;去掉
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式