您的位置:首页 > 其它

1*2*...100的积的递归和循环实现

2017-12-14 17:44 330 查看
//求1*2*…100的积的递归和循环实现

public class Day04_2 {
public static void main(String args[]){
Day04_2 d=new Day04_2();

//循环
d.loop();

//递归
System.out.println("1到100之积:"+d.cal(100));

}
public  void  loop() {
BigInteger result = new BigInteger("1");//为result赋初始值,为1
for (int i = 1; i <= 100; i++) {
BigInteger num = new BigInteger(String.valueOf(i));  //String.valueOf(i)将i变为字符串
result = result.multiply(num);//调用自乘方法
}
System.out.println("1到100之积:"+result);
}

public  BigInteger cal(int i) {

if (i == 1)
return BigInteger.ONE;//返回第一个数
else
return cal(i- 1).multiply(BigInteger.valueOf(i));
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  100