有从1到n的n个数,计算它们的和?(要求不使用for循环)

如果不适用for循环,那么我们可以考虑函数的思想:

采用求余思想

Double hj = 0.0;

if((n-1)%2 == 0){//表明这是一个基数,如1 2 3 4 5 6 7,那么这组数的前三对,两两想加,和为7

  hj = [(n-1)/2]*n+n;

}

if((n-2)%2 == 0){//表明这是一个偶数,如1 2 3 4 5 6,那么这组数两两配对,

  hj = [(n-2)/2]*n + n/2 + n

}

posted on 2014-02-15 22:52  不死小小强  阅读(433)  评论(0编辑  收藏  举报

导航