用递归算法求1~100的和,用java写。

 我来答
小西
推荐于2017-10-01 · 运营
小西
运营
采纳数:218 获赞数:3887
百度知道热心用户

向TA提问 私信TA
展开全部
public class Test {    /*创建类*/

public static void main(String[] args) {
System.out.println(dg(100));
}

static int dg(int i) {     /*定义变量 */
int sum;
if (i == 1)         /*假设条件*/
return 1;
else
sum = i + dg(i - 1);     /*1~100的和的表达式*/
return sum;              /*返回结果*/
}
}

  

  递归是计算机科学的一个重要概念,递归的方法是程序设计中有效的方法,采用递归编写。

  递归能使程序变得简洁和清晰。

  每次调用在规模上都有所缩小(通常是减半);

  相邻两次重复之间有紧密的联系,前一次要为后一次做准备(通常前一次的输出就作为后一次的输入);

  在问题的规模极小时必须用直接给出解答而不再进行递归调用,因而每次递归调用都是有条件的(以规模未达到直接解答的大小为条件),无条件递归调用将会成为死循环而不能正常结束。

tiantang77777
推荐于2017-10-04 · TA获得超过1521个赞
知道小有建树答主
回答量:195
采纳率:0%
帮助的人:110万
展开全部
public class Test {
int doSum(int n){
if(n==100){
return n;
}
return n+doSum(n+1);
}
public static void main(String args[]){
System.out.println(new Test().doSum(1));
}
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友7693d9fd
2012-04-08 · TA获得超过292个赞
知道小有建树答主
回答量:801
采纳率:0%
帮助的人:234万
展开全部
不能用for循环啊?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式