JAVA初学者 自己写得一段程序 反复更改还是有5处错误 请各位高手指点修改一下 十分感谢
这是源程序我的意思是输入一个等差数列的三个参数利用程序求数列和importjava.util.Scanner;publicclassSeries{publicstatic...
这是源程序 我的意思是输入一个等差数列的三个参数 利用程序求数列和
import java.util.Scanner;
public class Series{
public static void main(String args[]);{
Scanner reader=new Scanner(System.in);
System.out.printf("输入三个数作为该数列的首项 项数 公差");
int[] x = {0,0,0};
for(int i=1;i<=3;i++)
{
reader.hasNextInt();
x[i-1]=reader.nextInt();
}
int getSeries(int a,int b,int c){
return((2*a+(b-1)*c)*b/2);
}
Series K=new Series();
System.out.println("数列和为:"+K.getSeries(x[0],x[1],x[2]));
}
}
就这么多了 下面是运行后的错误提示:---------- javac ----------
Series.java:12: 需要 ';'
int getSeries(int a,int b,int c){
^
Series.java:12: 需要 <标识符>
int getSeries(int a,int b,int c){
^
Series.java:12: 不是语句
int getSeries(int a,int b,int c){
^
Series.java:12: 需要 ';'
int getSeries(int a,int b,int c){
^
Series.java:12: 需要 ';'
int getSeries(int a,int b,int c){
^
5 错误
输出完成 (耗时 0 秒) - 正常终止 展开
import java.util.Scanner;
public class Series{
public static void main(String args[]);{
Scanner reader=new Scanner(System.in);
System.out.printf("输入三个数作为该数列的首项 项数 公差");
int[] x = {0,0,0};
for(int i=1;i<=3;i++)
{
reader.hasNextInt();
x[i-1]=reader.nextInt();
}
int getSeries(int a,int b,int c){
return((2*a+(b-1)*c)*b/2);
}
Series K=new Series();
System.out.println("数列和为:"+K.getSeries(x[0],x[1],x[2]));
}
}
就这么多了 下面是运行后的错误提示:---------- javac ----------
Series.java:12: 需要 ';'
int getSeries(int a,int b,int c){
^
Series.java:12: 需要 <标识符>
int getSeries(int a,int b,int c){
^
Series.java:12: 不是语句
int getSeries(int a,int b,int c){
^
Series.java:12: 需要 ';'
int getSeries(int a,int b,int c){
^
Series.java:12: 需要 ';'
int getSeries(int a,int b,int c){
^
5 错误
输出完成 (耗时 0 秒) - 正常终止 展开
3个回答
展开全部
public static void main(String args[]);{首先这一句要把主方法的;去掉.
然后再编译应该还会报错,因为你在main方法里面定义了getSeries方法.
正确做法应该是把这个方法放在类中并且定义为static的,然后在主方法中调用.
然后再编译应该还会报错,因为你在main方法里面定义了getSeries方法.
正确做法应该是把这个方法放在类中并且定义为static的,然后在主方法中调用.
更多追问追答
追问
我再新建一个类把int getSeries(int a,int b,int c){
return((2*a+(b-1)*c)*b/2);} 这个方法放进去 那这个类应该放在哪里 可以放在main方法的下面吗
追答
不要新建一个类.直接放在main方法下面就好
public class Series{
public static void main(String[] args){
getSeries();
}
public static int getSeries(){
}
}像这样
展开全部
public static void main(String args[]);{
.这里写错了 只有abstract的方法最后加 ;
把; 去掉看看
还有
int getSeries(int a,int b,int c){
return((2*a+(b-1)*c)*b/2);
}
这明明是一个方法 你却把这个方法写在了mian方法里 报错才见鬼
.这里写错了 只有abstract的方法最后加 ;
把; 去掉看看
还有
int getSeries(int a,int b,int c){
return((2*a+(b-1)*c)*b/2);
}
这明明是一个方法 你却把这个方法写在了mian方法里 报错才见鬼
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1: main方法那里多了个" ; "
2、java里面不支持方法里面定义另外的方法
3、如果你要从控制台得到int类型数据,只需要 int i= reader.nextInt()就可以,不用再用read.hasNextInt() 这个方法在你这里没有任何意义。以下是我帮你修改的:
import java.util.Scanner;
public class Series{
public static void main(String args[]){//这里你多了个“;”
Scanner reader=new Scanner(System.in);
System.out.printfln("输入三个数作为该数列的首项 项数 公差");
int[] x = {0,0,0};
for(int i=1;i<=3;i++){
//reader.hasNextInt();//你这句没有意义
x[i-1]=reader.nextInt();
}
Series K=new Series();
System.out.println("数列和为:"+K.getSeries(x[0],x[1],x[2]));
}//main结束
//以下是定义一个方法:
int getSeries(int a,int b,int c){
return((2*a+(b-1)*c)*b/2);
}//定义的方法结束
}
2、java里面不支持方法里面定义另外的方法
3、如果你要从控制台得到int类型数据,只需要 int i= reader.nextInt()就可以,不用再用read.hasNextInt() 这个方法在你这里没有任何意义。以下是我帮你修改的:
import java.util.Scanner;
public class Series{
public static void main(String args[]){//这里你多了个“;”
Scanner reader=new Scanner(System.in);
System.out.printfln("输入三个数作为该数列的首项 项数 公差");
int[] x = {0,0,0};
for(int i=1;i<=3;i++){
//reader.hasNextInt();//你这句没有意义
x[i-1]=reader.nextInt();
}
Series K=new Series();
System.out.println("数列和为:"+K.getSeries(x[0],x[1],x[2]));
}//main结束
//以下是定义一个方法:
int getSeries(int a,int b,int c){
return((2*a+(b-1)*c)*b/2);
}//定义的方法结束
}
更多追问追答
追问
我运行了你的程序 但结果是这样的-
- java -
输入三个数作为该数列的首项 项数 公差Exception in thread "main" java.util.NoSuchElementException
at java.util.Scanner.throwFor(Scanner.java:838)
at java.util.Scanner.next(Scanner.java:1461)
at java.util.Scanner.nextInt(Scanner.java:2091)
at java.util.Scanner.nextInt(Scanner.java:2050)
at Series1.main(Series1.java:9)输出完成 - 正常终止
追答
哦哦,System.out.printfln("输入三个数作为该数列的首项 项数 公差"); 改成System.out.println("输入三个数作为该数列的首项 项数 公差");就行了,把print那里的f去掉,另外,你输入的要是整数,而且还要在范围里面的,这里没有做错误处理
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询