大家好,我是初学者,今天在书上看见这样一个题目,我安装书上的代码敲上去,却出现错误。请问大家这是怎么回事,该如何解决呢,谢谢大家。
代码如下:
public class Test { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Factorial ff=new Factorial();
for (int i = 0; i < 5; i++) {
ff.setInitVal(2*(i+1));
ff.result=Factorial(ff.initval);
ff.print();
}
}
public static int Factorial(int n){
if (n==0) {
return 1;
}
return n*Factorial(n-1);
}
}
代码如下:
public class Test { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Factorial ff=new Factorial();
for (int i = 0; i < 5; i++) {
ff.setInitVal(2*(i+1));
ff.result=Factorial(ff.initval);
ff.print();
}
}
public static int Factorial(int n){
if (n==0) {
return 1;
}
return n*Factorial(n-1);
}
}
修改成:
Test tt = new Test();
就可以了.
public class Test { /**
* @param args
*/
public static void main(String[] args) {
Test ff = new Test();
for (int i = 0; i < 5; i++) {
int sum = Factorial(2 * (i + 1));
System.out.println(sum);
;
}
} public static int Factorial(int n) {
if (n == 0) {
return 1;
}
return n * Factorial(n - 1);
}
}
public static void main(String[] args) {
Test ff = new Test();
for (int i = 0; i < 5; i++) {
int sum = ff.Factorial(2 * (i + 1));
System.out.println(sum);
;
}
} int Factorial(int n) {
if (n == 0) {
return 1;
}
return n * Factorial(n - 1);
}
}
public static void main(String[] args) {
for (int i = 0; i < 5; i++) {
int sum = Factorial(2 * (i + 1));
System.out.println(sum);
}
} static int Factorial(int n) {
if (n == 0) {
return 1;
}
return n * Factorial(n - 1);
}
}