Ich versuche ein Java-Programm zu machen, das Eingaben hinzufügt, bis die Summe 100+ entspricht oder der Benutzer 5 Zahlen eingibt. Ich versuche auch, einen höchsten Lauf hinzuzufügen, der die höchste Eingabe verfolgt. Momentan läuft es nach 5 Eingaben weiter, wenn es weniger als 100 ist und mein höchster Lauf funktioniert nicht. ? Wie würde ich dieses Problem beheben (ich bin zu Java neu, wenn Sie sagen können)Programm läuft nicht wie vorgesehen
import java.io.*;
public class HighScoreTest {
public static void main(String[] args) {
// input streams.
InputStreamReader input = new InputStreamReader(System.in);
BufferedReader reader = new BufferedReader(input);
// constant declarations
final Integer MAX = 100;
final Integer MAX_NUMBER = 4;
// variable declarations
String sName;
Integer currentTotal;
Integer currentNumber;
Integer numbersInputed = 0;
Integer count;
Integer maxRunToDate = 0;
// we catch exceptions if some are thrown.
// an exception would be entering a string when a number is expected
try {
System.out.println("What is your name?");
// reading string from the stream
sName = reader.readLine();
currentTotal = 0;
for(count = 0; count < MAX_NUMBER; count++) {
numbersInputed += count;
}
do {
System.out.println("Please enter a number");
currentNumber = Integer.parseInt(reader.readLine());
currentTotal = currentTotal + currentNumber;
}while(currentTotal < MAX || numbersInputed == MAX_NUMBER);
if (maxRunToDate < currentTotal) {
maxRunToDate = currentTotal;
}
System.out.println(sName +", the total for this run is "+ currentTotal);
System.out.println("The highest run is "+ maxRunToDate);
} catch (IOException e){
System.out.println("Error reading from user");
}
}
}
Kürzen Sie Ihr Programm so viel wie Sie können, während Sie das Problem immer noch reproduzieren. Fordern Sie uns nicht auf, das gesamte Programm für Sie zu debuggen. Sobald Sie es gekürzt haben, werden Sie wahrscheinlich das Problem sehen oder können erneut fragen. –
Wenn der Benutzer 5 Zahlen eingeben soll, warum ist 'MAX_NUMBER' auf 4 gesetzt? – QBrute