java用函数调用求阶乘
classJc(){publicstaticlongJiecheng(intx){staticlongy=1;for(inti=1;i<=x;i++)y=y*i;retu...
class Jc()
{
public static long Jiecheng(int x)
{
static long y=1;
for(int i=1;i<=x;i++)
y=y*i;
return y;
}
}
public class 阶乘 {
public static void main(String args[])
{
System.out.println(Jc.Jiecheng(2));
}
请高手指出错误。。。可以不用递归 展开
{
public static long Jiecheng(int x)
{
static long y=1;
for(int i=1;i<=x;i++)
y=y*i;
return y;
}
}
public class 阶乘 {
public static void main(String args[])
{
System.out.println(Jc.Jiecheng(2));
}
请高手指出错误。。。可以不用递归 展开
1个回答
展开全部
public class Factorial{
public Factorial(){};
public Factorial(int i){
System.out.println(recursion(i));//递归方法求
}
private int recursion(int i){ ----------递归方法主体
if(i<0) //<0退出
return -1;
else if(i==0) //0的阶乘=1
return 1;
else //0继续递归
return i*recursion(i-1);
}
public static void main(String[] args){
Factorial factorial=new Factorial(5); //5的阶乘
}
}
////////////以下是用你的程序改的,主要是格式问题,思想是对的。你这个//////////是循环求阶乘,我上面那个是递归求阶乘
public class 阶乘 {
public static long Jiecheng(int x){
long y=1;
for(int i=1;i<=x;i++)
y=y*i;
return y;
}
public static void main(String args[])
{
System.out.println(阶乘.Jiecheng(5));
}
}
public Factorial(){};
public Factorial(int i){
System.out.println(recursion(i));//递归方法求
}
private int recursion(int i){ ----------递归方法主体
if(i<0) //<0退出
return -1;
else if(i==0) //0的阶乘=1
return 1;
else //0继续递归
return i*recursion(i-1);
}
public static void main(String[] args){
Factorial factorial=new Factorial(5); //5的阶乘
}
}
////////////以下是用你的程序改的,主要是格式问题,思想是对的。你这个//////////是循环求阶乘,我上面那个是递归求阶乘
public class 阶乘 {
public static long Jiecheng(int x){
long y=1;
for(int i=1;i<=x;i++)
y=y*i;
return y;
}
public static void main(String args[])
{
System.out.println(阶乘.Jiecheng(5));
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询