Hilfe bei Java Editor?

...komplette Frage anzeigen

2 Antworten

Kommt drauf an, was für eine Tabelle du verwendest. 

Wenn ich vom allereinfachsten Fall ausgehen würde, dann hast du eine Liste, welche Beanobjekte speichert. 

Dein Objekt wiederum hat dann drei Eigenschaften: Note, MinPunkte, MaxPunkte.

Also was benötigst du entsprechend? Eine Methode, die eine Note zurück gibt, und gleichzeitig Punkte als Parameter akzeptiert. Innerhalb dieser Methode kannst du die Liste durchlaufen, und vergleichen: 

Pseudocode:

if (punkte >= notenschluessel.minPunkte && punkte <= notenschluessel.maxPunkte) {
  return notenschluessel.note;
}

Hi,

ich weiß leider nicht wie du das gelöst hast. Ich denke es gibt keine Formel zum berechnen, sondern nur eine vorgefertigte Tabelle?!

Würde diese Tabelle in einem Array speichern. An die jeweilige Position des Arrays würde ich dann die Note abspeichern. Also Feld 0 = 6, ..., Feld 15 = 1+.

Danach einfach eine Punktezahl über die Tastatur einlesen (InputStreamReader und BufferedReader nutzen) diesen Wert als die Position für das Feld nehmen und den gewünschten Wert ausgeben. 

Gruß

Summerrain23 01.05.2016, 15:07

Vielen Dank, das mit dem Array habe ich schon aber wie funktionieren die anderen beiden Funktionen?

0
DarkNightmare 01.05.2016, 18:43
@Summerrain23

Hi,

eichenfach mal ein kleines Programm geschrieben. So würde es funktionieren.

import java.io.*;

public class Punkte {

public static void main(String[] args) throws IOException {
String noten[] = { "6", "5-", "5", "5+", "4-", "4", "4+", "3-", "3",
"3+", "2-", "2", "2+", "1-", "1", "1+" };
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);

System.out.println("Noten Punkte umrechen");
System.out.println("---------------------");
System.out.println("Bitte Zahl eingeben:");

String eingabe = br.readLine();
Integer i = Integer.parseInt(eingabe);

System.out.println("Die Notenpunkte " + eingabe
+ " entspricht der Note " + noten[i]);
}
}

Gruß

0

Was möchtest Du wissen?