int a=1;
for(int k=2;k<=20;k++){
fac=fack;
Systemoutprintln(k="!="+fac);
}
下面的你得自己注意领悟拉:
Function js(i){ //定义函数 js 并传递参数 i
If (i = 1) { //若过程中 i=1
js = 1} //则 js = 1
Else //否则
js = i js(i - 1) //
}
不是返回值不是字符串,而是你的if条件不全,添加一个return 就好了。代码修改如下:
public static String invert(String str, int i){ //尾递归,作用是把“12345”转换为“54321”
if(i>1){
return strsubstring((i-1),i) + invert(str,--i);
}
if(i==1){
return strsubstring(0,1);
}
return "";
}
return 1/n + f(n-1);这里错了java中/当两边都是int是它代表取整运算
2种改法:1)int n = consolenextInt();定义n是用double来定义
2)return 1/n + f(n-1);这里讲结果强转为double
return cattle(n-1)+cattle(n-2)
这个地方相当于先执行cattle(n-1)和cattle(n-2),然后再它们的和返回
以n = 4为例,
先是return cattle(3)+cattle(2)
计算cattle(3)的值时,cattle(3):return cattle(2)+cattle(1)
也就是cattle(3)+cattle(2) = cattle(2)+cattle(1)+cattle(2)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)