Konvertieren Durchschnittliche Punktzahl Brief Note
Bin ich entwerfen ein Programm, dass Noten ein Schüler mit dem Durchschnitt von 4 Mark in die 4 Probanden mit dem grading-system unten:
80-100 = A
70-79 = B
60-69 = C
50-59 = D
40-49 = E
0 -39 = F
Ich bin stecken geblieben auf dem letzten Teil für die Umwandlung der Durchschnitt a Brief Note. Hier ist der code, den ich verwende:
package practicals;
import java.util.Scanner;
public class GradeSystem {
public static void main(String[] args) {
//variable declaration
String name;
int mark1, mark2, mark3, mark4;
int grade = 0;
int A, B, C, D, F;
double average;
//input
Scanner input = new Scanner(System.in);
System.out.println("Enter Your Name");
name = input.nextLine();
Scanner number = new Scanner(System.in);
System.out.println("Enter Your Registration Number");
name = input.nextLine();
Scanner marks = new Scanner(System.in);
System.out.println("Enter The Student Marks from The Four Subjects");
mark1 = input.nextInt();
mark2 = input.nextInt();
mark3 = input.nextInt();
mark4 = input.nextInt();
input.close();
average = (double) (mark1 + mark2 + mark3 + mark4) / 4;
System.out.println("Your average from last semester is " + average);
if (grade >= 80 && grade <= 100) {
System.out.println("Your Grade is A");
} else if (grade >= 70 && grade <= 79) {
System.out.println("Your Grade is B");
} else if (grade >= 60 && grade <= 69) {
System.out.println("Your Grade is C");
} else if (grade >= 50 && grade <= 59) {
System.out.println("Your Grade is D");
} else if (grade >= 40 && grade <= 49) {
System.out.println("Your Grade is E");
} else if (grade >= 0 && grade <= 39) {
System.out.println("Your Grade is F");
}
}
}
Was genau ist das problem? Sind Sie immer das falsche Ergebnis? Eine Ausnahme?
Auch möchten Sie vielleicht erwägen, eine Kante bei einer Punktzahl größer als 100 (extra credit vielleicht?)
Ich sehe nicht, wo Sie ändern
Auch möchten Sie vielleicht erwägen, eine Kante bei einer Punktzahl größer als 100 (extra credit vielleicht?)
Ich sehe nicht, wo Sie ändern
grade
von der ursprünglichen 0.
InformationsquelleAutor Netherland | 2014-11-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
Initialisiert wurde Grad auf 0 und nie aktualisiert
Sie müssen Sie zu ersetzen
mit
in allen if-Anweisungen
ja, das ist richtig, aber das Ding löst das Kind das Problem , als er gerade mit der falschen variable
Vielen Dank Ahmed und alle anderen.... Ich muss nur ändern, grade mit Durchschnitt....
Geben Sie Ihren Namen Ali Geben Sie Ihre Registrierungs-Nummer 34233 Geben Sie Die Schüler-Marken aus Den Vier Fächern 76 65 77 23 Ihr Durchschnitt aus dem letzten semester ist 60.25 Ihr Grad C
dann sollten Sie erwägen, akzeptieren Sie diese Antwort durch einen Klick auf das Häkchen unterhalb der Antwort
InformationsquelleAutor Ahmed
Sind Sie in die Berechnung der durchschnittlichen durchschnittlichen Variablen und den Vergleich der Ergebnisse in Ihrem if-else-Bedingungen mit Ihrer Klasse variable. Auch Sie speichern, Nummer der Eintragung in Ihrem Namen variable. Übrigens, Sie brauchen nicht zum erstellen neuer scanner für jeden zu Lesen. Probieren Sie diesen code aus:
InformationsquelleAutor msmolcic
Was du falsch machst hier tut Ihre Vergleiche auf
grade
wenn das, was Sie wirklich wollen, zu tun ist, vergleichen Sie `Durchschnitt. Ändern Sie die if/elseif-block zu verwenden Durchschnitt.Ich würde auch empfehlen, es zu verändern, nur check-Intervalle, wie diese:
Diese sieht ein wenig sauberer und logischer. Das einzige, was diese nicht handhaben sind Noten über 100 (die werden so behandelt, als A) und Grade unter 0 (das wird als das behandelt werden, F), so möchten Sie vielleicht ändern Sie Ihr initial-block:
In OP ' s original-code überprüfen Sie die Obergrenze und Untergrenze bei 0 und 100, so dass ich denke, es ist sicher anzunehmen, dass für dieses Beispiel ist es nicht gültig.
InformationsquelleAutor AdamMc331
Brauchen Sie brauchen
grade
variabel, weil Sie mitaverage
für die Berechnung.Und um Ihren code effizienter nicht vergleichen Grenzfälle.
Und Sie brauchen auch nicht zu erklären, dass die folgenden Variablen
InformationsquelleAutor afzalex