写一个从1到100相加的递归

1、写一个从1到100相加的递归。
2、写一个从1到10相乘的递归。
3、一个4位数,例如:1 2 3 4。分成4个1位数相加
1、答案是:

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

public static int sum(int i){
if(i==1){
return 1;
}else{
return sum(i-1)+i;
}
}
}


2、答案是:

public class Test1{
public static void main(String[] args){
System.out.println(Test1.mul(10));
}
public static int mul(int i){
if(i==1){
return 1;
}else{
return mul(i-1)*i;
}
}
}



3、答案是:

解法一

package org.e101.com;

public class Test16 {
public static void main(String[] args){
int sum;
String s="1234";
String s1=s.substring(0, 1);
String s2=s.substring(1, 2);
String s3=s.substring(2, 3);
String s4=s.substring(3, 4);
int ss1=Integer.parseInt(s1);
int ss2=Integer.parseInt(s2);
int ss3=Integer.parseInt(s3);
int ss4=Integer.parseInt(s4);
sum=ss1+ss2+ss3+ss4;
System.out.println("****************ss1+ss2+ss3+ss4="+sum);
}
}


package org.e101.com;

public class Test16 {
public static void main(String[] args){
int sum = 0;
int dg=0;
String s="1234";
for(int i=0;i<s.length();i++){
dg=Integer.parseInt(s.substring(i, i+1));
sum+=dg;
}
System.out.println("****************sum="+sum);
}
}

没有更多推荐了,返回首页