新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
System.out.println(f.y()); 不对 当你NEW后会在内存分配地址空间 此空间将放置你在CLASS内中在成员变量。 A f=new A(5) 代表A对象创建成功 那么在访问类A动态成员变量时 应当要A.y 还有 long y()这个方法声明应当给一个访问修饰符(以后封装思想需要)
成都创新互联长期为上千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为巴南企业提供专业的网站制作、成都网站设计,巴南网站改版等技术服务。拥有10多年丰富建站经验和众多成功案例,为您定制开发。
最简单的计算:5×4×3×2×1
public static void main(String[] args){
System.out.println(5×4×3×2×1);
}
复杂点通用的
public static int get(int n){
if(n==1){
return n;
}else{
return n*get(n-1);
}
}
public static void main(String[] args){
System.out.println(get(5));
}
新建jsp文件,写入以下代码:
%
int sum=1;
if(num0){//判断传入数是否为负数
throw new IllegalArgumentException("必须为正整数!");//抛出不合理参数异常
}
for(int i=1;i=5;i++){//循环num
sum *= i;//每循环一次进行乘法运算
}
out.print("5的阶乘计算结果:"+sum);//返回阶乘的值
%
public class jiecheng{
static int Run(int n){
if(n==1){
return n;
}else{
return n*Run(n-1);
}
}
public static void main(String[] args){
int n = 5;
int result = 0;
result = Run(5);
System.out.println(result);
}
}
import java.util.Scanner;
public class Test2 {
public static void main(String[] args) {
System.out.println("请输入你需要计算的数字:");
Scanner sc = new Scanner(System.in);
int i = sc.nextInt();
int d = pp(i);
System.out.print(d);
}
public static int pp(int n) {
if (n 2)
return 1 * n;
else
return n * pp(n - 1);
}
}
int pp(int n)
{
if(n2)
return 1*n;
else
return n*pp(n-1);
}
这一段, 如果n大于2,返回n*pp(n-1)的意思,就是,任何一个N的阶乘等于n*比n小1的数的阶乘,打个比方,比如5的阶乘等于5*(4的阶乘),4的阶乘等于4*(3的阶乘),而1的阶乘,等于1本身。
public class Factorial{
public Factorial(){};
public Factorial(int i){
System.out.println(recursion(i));//递归方法求
}
private int recursion(int i){ ----------递归方法主体
if(i0) //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));
}
}