java不用循环的方式计算1-100之内的1+3+6+10+15+……的和是
答案:3 悬赏:10 手机版
解决时间 2021-03-02 07:04
- 提问者网友:溺爱和你
- 2021-03-02 03:32
java不用循环的方式计算1-100之内的1+3+6+10+15+……的和是
最佳答案
- 五星知识达人网友:未来江山和你
- 2021-03-02 03:43
两种方法:一,自己求出公式,用java直接套公式。二,函数递归求解。但用的来说还是循环最简单
全部回答
- 1楼网友:舍身薄凉客
- 2021-03-02 05:54
根据规则
+2 +3 +4 +5
1+2=3、3+3=6、6+4=10、10+5=15、15+6=21
class Tester{
private static int abc(int an, int gap, int max){
if(an>max) return 0;
int tmp = an + gap;
gap++;
return an + abc(tmp, gap, max);
}
public static void main(String[] args){
System.out.println( abc(1,2, 100));
}
}
+2 +3 +4 +5
1+2=3、3+3=6、6+4=10、10+5=15、15+6=21
class Tester{
private static int abc(int an, int gap, int max){
if(an>max) return 0;
int tmp = an + gap;
gap++;
return an + abc(tmp, gap, max);
}
public static void main(String[] args){
System.out.println( abc(1,2, 100));
}
}
- 2楼网友:拾荒鲤
- 2021-03-02 05:16
那我能想到的只有递归了
public class Main {
public static void main(String[] args) {
System.out.println(calc(0,0));
}
//java不用循环的方式计算1-100之内的1+3+6+10+15+……的和是
public static int calc(int now,int count){
if(now>100){
return 0;
}
return calc(now+count,count+1)+now;
}
}
结果455 如果包含100的话 把now>100改成now>=100即可
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯