我终于写我的程序(使用了一段时间,因为我是一个初学者),什么程序做的是:简单平均误差,无法找到合适的代码
打印菜单有2个选项,平均等级或退出。
如果用户选择平均成绩,它会要求提供他们的姓名。然后它告诉他们哪些等级将被平均排序。
然后他们输入任意数量的等级,然后按-1,它会给你这些等级的总和以及平均值。它做了3次,用于作业,测验和测试。
我需要做的最后一件事是平均那些成绩全部3,然后输出:
System.out.println(name, "'s average is ", + averageFinal);
我得到了这条线从我的任务:
Final Average = 0.25*HomeworkAvg + 0.25*QuizAvg + 0.50*TestAvg = 77.87
我试图把这个程序放在:
averageFinal = 0.25*averageOne + 0.25*averageTwo + 0.50*averageThree;
但由于某种原因,我得到这个奇怪的编译错误,我似乎无法修复:
Assignment3.java:120: error: cannot find symbol
System.println(name, "'s final average is ", averageFinal);
^
symbol: method println(String,String,double)
location: class System
1 error
有只是一个简单的问题,我的代码,或者我有改变我的字符串方法中的东西?
import java.util.Scanner;
public class Assignment3 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int choice;
int total;
double averageOne;
double averageTwo;
double averageThree;
double averageFinal;
int grade;
int gradeCounterone;
int gradeCountertwo;
int gradeCounterthree;
gradeCounterone = 0;
gradeCountertwo = 0;
gradeCounterthree = 0;
total = 0;
String name;
System.out.println("Enter 1 or 2: \n 1 - Average grades \n 2 - Quit");
choice = input.nextInt();
if (choice == 1) {
System.out.println("Enter the students name:");
name = input.next();
System.out.println("Grades will be entered in this order: \n 1) Homework Grades \n 2) Quiz Grades \n 3) Test Grades ");
{
System.out.println("Enter homework grades, press -1 when finished:");
grade = input.nextInt();
while (grade != -1) {
total = total + grade;
gradeCounterone = gradeCounterone + 1;
System.out.println("Enter homework grades, press -1 when finished:");
grade = input.nextInt();
}
if (gradeCounterone != 0) {
averageOne = (double) total/gradeCounterone;
System.out.printf("\nThe total of the %d homework grades is %d\n", gradeCounterone, total);
System.out.printf("\nThe average of the homework grades is %.2f\n ", averageOne);
}
// second loop for quiz grades
System.out.println("\nEnter quiz grades, press -1 when finished:");
grade = input.nextInt();
while (grade != -1) {
total = total + grade;
gradeCountertwo = gradeCountertwo + 1;
System.out.println("Enter quiz grades, press -1 when finished:");
grade = input.nextInt();
}
if (gradeCountertwo != 0) {
averageTwo = (double) total/gradeCountertwo;
System.out.printf("\nThe total of the %d quiz grades is %d\n", gradeCountertwo, total);
System.out.printf("\nThe average of the quiz grades is %.2f\n ", averageTwo);
}
// third loop for test grades
System.out.println("\nEnter test grades, press -1 when finished:");
grade = input.nextInt();
while (grade != -1) {
total = total + grade;
gradeCounterthree = gradeCounterthree + 1;
System.out.println("Enter test grades, press -1 when finished:");
grade = input.nextInt();
}
if (gradeCounterthree != 0) {
averageThree = (double) total/gradeCounterthree;
System.out.printf("\nThe total of the %d test grades is %d\n", gradeCounterthree, total);
System.out.printf("\nThe average of the test grades is %.2f\n ", averageThree);
}
averageFinal = 0.25 * averageOne + 0.25 * averageTwo + 0.50 * averageThree;
System.println(name, "'s final average is ", averageFinal);
}
} else if (choice == 2) {
System.out.println("Exiting program.");
} else {
System.out.println("Invalid response, exiting program.");
}
}
}
哇,我甚至没有看到简单的错误><但由于! – user3304333
另外我觉得我最后的平均线不正确,有没有什么地方可以找到正确的代码?或者这就是你在JDK文档中找到它的意思 – user3304333