我得到了错误
无法找到符号 - 变量得分
任何人都可以指出我的程序中出现了什么问题吗?
import java.util.*;
public class Grades {
public static void main (String[] args) {
intro();
Scanner console = new Scanner(System.in);
int totalScoreMain = totalScore(score, curveNumber);
double weightedScoreMain = weightedScore(weight, score, curveNumber);
double weightedScore2Main = weightedScore2(weight2, sections, sumScore);
for(int i = 1; i <= 2; exam++) {
System.out.println("Exam i");
exam();
}
homework();
}
public static void intro () {
System.out.println("This program reads exam/homework scores");
System.out.println("and reports your overall course grade.");
System.out.println();
}
public static void exam () {
System.out.print("What is its weight (0-100)?");
double weight = console.nextInt();
System.out.print("Score earned?");
int score = console.nextInt();
System.out.print("Was there a curve (1=yes, 2=no)?");
int curve = console.nextInt();
if (curve == 1) {
System.out.print("How much was the curve?");
int curveNumber = console.nextInt();
} else if (curve == 2) {
int curveNumber = 0;
}
totalScore(score, curveNumber);
weightedscore(weight, score, curveNumber);
System.out.println("Total points = " + totalScoreMain + "/" + "100");
System.out.println("Weighted score = " + weightedScoreMain + "/" + weight);
}
public static int totalScore (int score, int curveNumber) {
int totalScore = Math.min(score + curveNumber, 100);
return totalScore;
}
public static double weightedScore (int weight, int score, int curveNumber) {
double weightedScore = (score + curveNumber) * weight/100;
return weightedScore;
}
public static void homework () {
System.out.print("What is its weight (0-100)?");
int weight2 = console.nextInt();
System.out.print("Number of assignments?");
int number = console.nextInt();
int sumScore = 0;
int sumMax = 0;
for(int i = 1; i <= number; i++) {
System.out.println("Assignment " + i + "score and max?");
int aScore = console.nextInt();
int aScoreMax = console.nextInt();
sumScore = sumScore + aScore;
sumMax = sumMax + aScoreMax; }
System.out.print("How many sections attended?");
int section = console.nextInt();
int sections = Math.min(3 * section, 20);
System.out.println("Section points = " + sections);
weightedScore2(weight2, sections, sumScore);
System.out.println("Total points = " + (sections + sumScore) + "/" + sumMax);
System.out.println("Weighted score = " + weightedScore2 + "/" + weight2);
}
public static double weightedScore2(int weight2, int sections, int sumScore)
{
int weightedScore2 = weight2/100 * (sections + sumScore);
return weightedScore2;
}
}
答案 0 :(得分:0)
以下代码不是一个好的代码,但它运行并且需要进行大量的改进,现在仍然可以尝试运行,以便继续:
import java.util.Scanner;
public class Grades {
static int score;
static int curveNumber;
static int weight;
static int weight2;
static int sections;
static int sumScore;
static int totalScoreMain;
static double weightedScoreMain;
static double weightedScore2Main;
static Scanner console = new Scanner(System.in);
public static void main(String[] args) {
intro();
totalScoreMain = totalScore(score, curveNumber);
weightedScoreMain = weightedScore(weight, score, curveNumber);
weightedScore2Main = weightedScore2(weight2, sections, sumScore);
for (int i = 1; i <= 2; i++) {
System.out.println("Exam " + i);
exam();
}
homework();
}
public static void intro() {
System.out.println("This program reads exam/homework scores");
System.out.println("and reports your overall course grade.");
System.out.println();
}
public static void exam() {
System.out.print("What is its weight (0-100)?");
double weight = console.nextInt();
System.out.print("Score earned?");
int score = console.nextInt();
System.out.print("Was there a curve (1=yes, 2=no)?");
int curve = console.nextInt();
if (curve == 1) {
System.out.print("How much was the curve?");
curveNumber = console.nextInt();
} else if (curve == 2) {
curveNumber = 0;
}
totalScore(score, curveNumber);
weightedScore(weight, score, curveNumber);
System.out.println("Total points = " + totalScoreMain + "/" + "100");
System.out.println("Weighted score = " + weightedScoreMain + "/"
+ weight);
}
public static int totalScore(int score, int curveNumber) {
int totalScore = Math.min(score + curveNumber, 100);
return totalScore;
}
public static double weightedScore(double weight, int score, int curveNumber) {
double weightedScore = (score + curveNumber) * weight / 100;
return weightedScore;
}
public static void homework() {
System.out.print("What is its weight (0-100)?");
int weight2 = console.nextInt();
System.out.print("Number of assignments?");
int number = console.nextInt();
int sumScore = 0;
int sumMax = 0;
for (int i = 1; i <= number; i++) {
System.out.println("Assignment " + i + "score and max?");
int aScore = console.nextInt();
int aScoreMax = console.nextInt();
sumScore = sumScore + aScore;
sumMax = sumMax + aScoreMax;
}
System.out.print("How many sections attended?");
int section = console.nextInt();
int sections = Math.min(3 * section, 20);
System.out.println("Section points = " + sections);
System.out.println("Total points = " + (sections + sumScore) + "/"
+ sumMax);
System.out.println("Weighted score = "
+ weightedScore2(weight2, sections, sumScore) / weight2);
}
public static double weightedScore2(int weight2, int sections, int sumScore) {
int weightedScore2 = weight2 / 100 * (sections + sumScore);
return weightedScore2;
}
}