我编写了打印星形的程序,而且星形的总和形成了三角形。当我拨打电话时tringle(3)
,它应显示如下内容,
***
**
*
并且,它也应该计算sum as 6
并返回。但是,该代码无法按照我提供的预期工作,
public static int triangular(int n) {
int count = 0;
count = triangular(n, count);
return count;
}
public static int triangular(int n, int count_){
int count = count_;
if(n == 0)
return count;
if(n < 0)
return -1;
for (int i = 0; i < n; i++) {
System.out.print("* ");
count = count + 1 ;
if(i == n){
return triangular(n-1, count);
}
}
System.out.println();
return count;
}
我如何改善代码?现在,它打印
* * *
3
请指教。
您不需要多个参数... 3 + 2 + 1 + 0 = 6。
public static int triangular(int n){
if(n <= 0) return 0;
for (int i = 0; i < n; i++) {
System.out.print("* ");
}
System.out.println();
return n + triangular(n - 1);
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句