楼主,系统提示你少括号,让你插入一个括号在结束块,说的很明白啊
创新互联公司主营寿光网站建设的网络公司,主营网站建设方案,重庆APP开发公司,寿光h5成都小程序开发搭建,寿光网站营销推广欢迎寿光等地区企业咨询
你在最后加个括号就没错啦...
public class example2 {
static long calcFactorial(int n){
long factorial=1;
if(n1||n20){
System.out.println("输入错误!");
}
for(int i=n;i=1;i--){
factorial*=i;
}
System.out.println("请输入不超过20的正整数n:");
for(int i=1;i=n;i++){
System.out.printf("最后结果:%d",calcFactorial(n));
System.out.println();
return factorial;
}
public static void main(String[] args){}
} //-这个是 calcFactorial方法的结束括号,你类example2的结束括号呢?
另外你这个方法能否运行起来?主函数应该写在class内,而不是calcFactorial方法内
public class Myjiecheng {
public static void main(String[] args) {
String s=JOptionPane.showInputDialog("请输入你要求几的阶乘:");
if(s!=null s.length()0){
try{
int n=Integer.parseInt(s);
int sum=1;
for(int i=1;i=n;i++){
sum=sum*i;
}
JOptionPane.showMessageDialog(null, n+"的阶乘是"+sum);
}catch(Exception e){
JOptionPane.showMessageDialog(null, "输入的不是数字");
}
}
}
按照你的要求编写的n的阶乘的Java程序如下
public class Factorial{
public int foo(int x){
if(x==0 || x==1){
return 1;
}else{
return x*foo(x-1);
}
}
public static void main(String[] args){
int n=6;
Factorial f=new Factorial();
System.out.println(f.foo(n));
}
}
用Java求键盘输入的数的阶乘n。(递归算法)packagejiecheng; importjava.util.*; //导入java.util包中的所有类classrep{ publiclongrep(intn){ longi=0; if(n==0||n==1) i=1;
elsi=n*rep(n-1) returni; } } publicclassJie { publicstaticvoidmain(String[] args) { intn; //此处定义要输入的数Scanner s = newScanner(System.in); //以下三行用于n的值得输入System.out.print( "请输入一个整数:"); n = s.nextInt(); rep f= newrep(); System.out.println(n+"!="+f.rep(n)); } }
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。
发展历程:20世纪90年代,硬件领域出现了单片式计算机系统,这种价格低廉的系统一出现就立即引起了自动控制领域人员的注意,因为使用它可以大幅度提升消费类电子产品(如电视机顶盒、面包烤箱、移动电话等)的智能化程度。
Sun公司为了抢占市场先机,在1991年成立了一个称为Green的项目小组,帕特里克、詹姆斯·高斯林、麦克·舍林丹和其他几个工程师一起组成的工作小组在加利福尼亚州门洛帕克市沙丘路的一个小工作室里面研究开发新技术,专攻计算机在家电产品上的嵌入式应用。