Berechnen des Klassendurchschnitts und Ausgabe einer Kurve

Status
Nicht offen für weitere Antworten.

Patrice

Neues Mitglied
Hallo zusammen!!!
Ich brauche bei einem Schulprojekt dringend Hilfe bei der Erstellung eines kleinen Programms, bei dem der Klassendurchschnitt von einer Klausur von 1,0 bis 5,0 ausgerechnet wird. Als Variable können dann die Anzahl der Prüflinge, die maximal erreichbaren Punkte, sowie ein Prozentsatz, der erreicht werden muss um die Note 4 zu bekommen, in die Maske eingegeben werden.
Anhand dieser 3 Eingaben soll in einem Frame, nachdem der "Berechne"-Button gedrückt wurde, ein Koordinatensystem erscheinen, aus dem man eine gezeichnete Gerade entnehmen kann.
Die Gerade schneidet die x-Achse bei der max. erreichbaren Punktzahl und die y-Achste bei der note 1.0. (Eine Gerade mit negativer Steigung)
Die Erstellung der GUI-Oberfläche für das Eingeben der Parameter ist mir bereits gelungen. Mir ist es als Newbi leider nicht gelungen die Werte aus den Eingabefeldern zu verwerten, und dann einen Algorithmus zu finden, der zur Zeichnung dieses Koordinatensystems und zur Geraden führt.

Ich meiner Verzweiflung danke ich euch für eure Mithilfe!!!!
 

mic_checker

Top Contributor
1) Warum postet du nicht schon mal was du hast
Du willst also den Notendurchschnitt derjenigen bestimmen die die Klausur bestanden haben (also ausgenommen die die durchgefallen sind da sie nicht den notwendigen Prozentsatz erreicht haben) ?

Du kannst z.B. die erreichten Punkte (derjenigen die bestanden haben) zusammenzählen und nachher durch die Anzahl der Studenten teilen. Btw. wie sollen diejenigen in der Statistik auftauchen die nicht bestanden haben?

Die Erstellung der GUI-Oberfläche für das Eingeben der Parameter ist mir bereits gelungen. Mir ist es als Newbi leider nicht gelungen die Werte aus den Eingabefeldern zu verwerten.

Weiss jetzt natürlich nicht wie dein Prog genau aussieht (deswegen poste mal den Code), aber es wird ja ungefähr so sein:
Du hast bspw. drei Textfelder (eins für die Anzahl der Prüflinge, eins für Prozentsatz und eins für max. Punktzahl).
Nun musst du für den Button noch einen ActionListener schreiben:
http://java.sun.com/docs/books/tutorial/uiswing/events/actionlistener.html

Zum Umgang mit Buttons etc.:
http://java.sun.com/docs/books/tutorial/uiswing/components/button.html

Bzw.
http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/JButton.html
 

KSG9|sebastian

Top Contributor
Kleine Hilfen:

Text aus Eingabefeldern lesen


Code:
public void initButtons(){
JButton berechnen = new JButton("Berechnen");
berechnen.addActionListener(new ActionListener(){
        public void valueChanged(ActionEvent e){
               startBerechnung();
        }
});
}
public void startBerechnung(){
    try{
          int anzahl_schueler = Integer.parseInt(anz_schueler.getText());
          int max_punkte = Integer.parseInt(max_punkte.getText());
          float proz = Float.parseFloat(proz_needed.getText());
    }catch(NumberFormatException nfe){
          System.err.println("Der eingegebene Wert ist keine Zahl");
    }
}

Mit dem Code wird ein Button "berechnen" erzeugt, ein ActionListener hinzugefügt. In der Methode startBerechnung() werden werde aus den Textfeldern eingelesen
 

Patrice

Neues Mitglied
Hallo nochmal...
Das ist, was ich bis jetzt habe...
Übrigens, die Klasse Eingabe wird bei mir von der
class Start_Durchschnitt {

public static void main(String[] args) {
Eingabe e = new Eingabe();
}

} gestartet...
Code:
import java.awt.GraphicsConfiguration;
import java.awt.HeadlessException;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;

import javax.swing.JFrame;

import java.awt.GridLayout;
import javax.swing.JPanel;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JTextField;
import java.awt.BorderLayout;

public class Eingabe extends JFrame implements ActionListener, WindowListener {
	String anz_Schueler;
	String max_Punkte;
	String proz_Needed;
	private javax.swing.JPanel jContentPane = null;

	private JPanel jPanel = null;
	private JPanel jPanel1 = null;
	private JButton jButton = null;
	private JPanel jPanel2 = null;
	private JPanel jPanel3 = null;
	private JPanel jPanel4 = null;
	private JLabel jLabel = null;
	private JLabel jLabel1 = null;
	private JLabel jLabel2 = null;
	private JLabel jLabel3 = null;
	private JLabel jLabel4 = null;
	private JTextField jTextField = null;
	private JTextField jTextField1 = null;
	private JTextField jTextField2 = null;
	public Eingabe() throws HeadlessException {
		super();
		initialize();
	}

	public Eingabe(GraphicsConfiguration gc) {
		super(gc);
		initialize();
	}


	public Eingabe(String title) throws HeadlessException {
		super(title);
		initialize();
	}

	public Eingabe(String title, GraphicsConfiguration gc) {
		super(title, gc);
		initialize();
	}

	public void actionPerformed(ActionEvent e) {
	//	startBerechnung();
	}

	/* public void startBerechnung(){ 
	   try{ 
	          int anzahl_schueler = Integer.parseInt(anz_Schueler.getText()); 
	          int max_punkte = Integer.parseInt(max_Punkte.getText()); 
	          float proz = Float.parseFloat(proz_Needed.getText()); 
	    }catch(NumberFormatException nfe){ 
	          System.err.println("Der eingegebene Wert ist keine Zahl"); 
	    } 
	} 
*/
	public void windowOpened(WindowEvent e) {}
	public void windowClosing(WindowEvent e){}
	public void windowClosed(WindowEvent e) {
		System.exit(0);
	}
	public void windowIconified(WindowEvent e) {}
	public void windowDeiconified(WindowEvent e) {}
	public void windowActivated(WindowEvent e) {}
	public void windowDeactivated(WindowEvent e) {}

	
	private void initialize() {
		this.setSize(649, 348);
		this.setContentPane(getJContentPane());
		this.setTitle("JFrame");
		addWindowListener(this);
		setVisible(true);
		
	}

	private javax.swing.JPanel getJContentPane() {
		if(jContentPane == null) {
			GridLayout gridLayout1 = new GridLayout();
			jContentPane = new javax.swing.JPanel();
			jContentPane.setLayout(gridLayout1);
			gridLayout1.setRows(1);
			gridLayout1.setColumns(2);
			jContentPane.add(getJPanel(), null);
			jContentPane.add(getJPanel1(), null);
		}
		return jContentPane;
	}
	  
	private JPanel getJPanel() {
		if (jPanel == null) {
			GridLayout gridLayout2 = new GridLayout();
			jPanel = new JPanel();
			jPanel.setLayout(gridLayout2);
			gridLayout2.setRows(3);
			gridLayout2.setColumns(1);
			jPanel.add(getJPanel2(), null);
			jPanel.add(getJPanel3(), null);
			jPanel.add(getJPanel4(), null);
		}
		return jPanel;
	}
	
	private JPanel getJPanel1() {
		if (jPanel1 == null) {
			jPanel1 = new JPanel();
			jPanel1.setLayout(new BorderLayout());
			jPanel1.setComponentOrientation(java.awt.ComponentOrientation.UNKNOWN);
		}
		return jPanel1;
	}
	
	private JButton getJButton() {
		if (jButton == null) {
			jButton = new JButton();
			jButton.setText("berechnen und anzeigen");
			jButton.setComponentOrientation(java.awt.ComponentOrientation.RIGHT_TO_LEFT);
		}
		return jButton;
	}
	   
	private JPanel getJPanel2() {
		if (jPanel2 == null) {
			jPanel2 = new JPanel();
		}
		return jPanel2;
	}
	  
	private JPanel getJPanel3() {
		if (jPanel3 == null) {
			jLabel4 = new JLabel();
			jLabel3 = new JLabel();
			jLabel2 = new JLabel();
			GridLayout gridLayout21 = new GridLayout();
			jPanel3 = new JPanel();
			jPanel3.setLayout(gridLayout21);
			gridLayout21.setRows(3);
			gridLayout21.setColumns(2);
			jLabel2.setText("Prozentangabe für eine 4");
			jLabel2.setFont(new java.awt.Font("Dialog", java.awt.Font.BOLD, 10));
			jLabel3.setText("Anzahl der max.  Punkte");
			jLabel3.setFont(new java.awt.Font("Dialog", java.awt.Font.BOLD, 10));
			jLabel4.setText("Anzahl der Klausurteilnehmer");
			jLabel4.setFont(new java.awt.Font("Dialog", java.awt.Font.BOLD, 10));
			jPanel3.add(jLabel4, null);
			jPanel3.add(getJTextField2(), null);
			jPanel3.add(jLabel3, null);
			jPanel3.add(getJTextField(), null);
			jPanel3.add(jLabel2, null);
			jPanel3.add(getJTextField1(), null);
		}
		return jPanel3;
	}
	  
	private JPanel getJPanel4() {
		if (jPanel4 == null) {
			jLabel1 = new JLabel();
			jLabel = new JLabel();
			GridLayout gridLayout11 = new GridLayout();
			jPanel4 = new JPanel();
			jPanel4.setLayout(gridLayout11);
			gridLayout11.setRows(3);
			gridLayout11.setColumns(1);
			jLabel.setText("");
			jLabel1.setText("");
			jPanel4.add(jLabel, null);
			jPanel4.add(getJButton(), null);
			jPanel4.add(jLabel1, null);
		}
		return jPanel4;
	}
	
	private JTextField getJTextField() {
		if (jTextField == null) {
			jTextField = new JTextField();
		}
		return jTextField;
	}
	   
	private JTextField getJTextField1() {
		if (jTextField1 == null) {
			jTextField1 = new JTextField();
		}
		return jTextField1;
	}
	    
	private JTextField getJTextField2() {
		if (jTextField2 == null) {
			jTextField2 = new JTextField();
			jTextField2.setPreferredSize(new java.awt.Dimension(4,20));
			jTextField2.setFont(new java.awt.Font("Dialog", java.awt.Font.PLAIN, 12));
		}
		return jTextField2;
	}
        }
Ob ein Schüler durchgefallen (Note 5) ist oder nicht spielt bei der Bewertung keine Rolle. Es werden für die Berechnung die Noten der Schüler summiert und daraufhin mit der Anzahl der geschriebenen Noten dividiert.
Was ich nicht weiss ist, wie man den Notenschlüssel an einem Koordinatensystem darstellt, den man aus der max. erreichbaren Punktzahl und der Note 1 errechnet.
Anders gefragt :Wie zeichne ich eine Gerade in einem Koordinatensystem, bei dem der Startpunkt auf der x-Achste (max. Punkteanzahl) abhängig von der Eingabe des Benutzers ist...
Ich Code ist die Funktion auskommentier, die ich von einem Beitrag bekommen habe.
Ich wußte leider nicht, wie ich sie in mein Prog integriere...


Danke für die Mithilfe!!!
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M OOP Brüche nicht richtig berechnen Java Basics - Anfänger-Themen 3
V Durchschnittliche Volatility in Prozent für 4 Stunden berechnen Java Basics - Anfänger-Themen 14
T Fibonacci mit einer Hilfsmethode berechnen Java Basics - Anfänger-Themen 10
laxla123 Quersumme berechnen Java Basics - Anfänger-Themen 1
I For Schleife Summe berechnen Java Basics - Anfänger-Themen 13
S Vollmond berechnen und ausgeben Java Basics - Anfänger-Themen 12
S Vollkommene Zahl berechnen und ausgeben Java Basics - Anfänger-Themen 16
A Berechnen Moor Nachbarschaft Java Basics - Anfänger-Themen 5
E Geburtstag im Schaltjahr berechnen Java Basics - Anfänger-Themen 24
Lion.King Schaltjahr berechnen Java Basics - Anfänger-Themen 31
E Alter (Laufzeit) berechnen Java Basics - Anfänger-Themen 11
I Zuschläge berechnen Java Basics - Anfänger-Themen 15
L mit Fakultät mathematische Formel berechnen Java Basics - Anfänger-Themen 5
TanTanIsTrying Durschnitt berechnen von eingegebener Zahl bis 1 heruntergezählt Java Basics - Anfänger-Themen 9
L Präfix berechnen Java Basics - Anfänger-Themen 33
F Abstand zwischen zwei Objekten berechnen wie? Java Basics - Anfänger-Themen 1
Aemulit Java Schaltjahr berechnen Code Java Basics - Anfänger-Themen 7
Poppigescorn Quersumme Berechnen mit einer While Schleife Java Basics - Anfänger-Themen 13
I Potenz berechnen mit for-Schleife Java Basics - Anfänger-Themen 3
A Standardabweichung in Java berechnen Java Basics - Anfänger-Themen 10
H Gesamtabweichung mit Array berechnen Java Basics - Anfänger-Themen 2
G Java Rabatt berechnen Java Basics - Anfänger-Themen 8
V Rückgeld berechnen Java Basics - Anfänger-Themen 6
eleonori Durchschnitt aller Werte eines Baums berechnen Java Basics - Anfänger-Themen 5
Ianatrix Zahlen von a bis b berechnen Java Basics - Anfänger-Themen 7
L Max, min, Summe und Durchschnitt berechnen Java Basics - Anfänger-Themen 4
L Anhalteweg berechnen Java Basics - Anfänger-Themen 6
Aeon Erste Schritte Preise berechnen mit do-while Java Basics - Anfänger-Themen 9
M Quadratwurzel berechnen Java Basics - Anfänger-Themen 8
V Wachstum berechnen und in Ist-Formel verwenden Java Basics - Anfänger-Themen 5
N Variable aus anderen Variablen in statischer Klasse berechnen/abspeichern? Java Basics - Anfänger-Themen 4
M Abschreibungsplan berechnen Java Basics - Anfänger-Themen 23
V Gehalt berechnen in Java Java Basics - Anfänger-Themen 6
justemii Gehalt berechnen - Aufgabe Java-Programm Java Basics - Anfänger-Themen 9
L Anzahl der benachbarten Minen berechnen und setzen Java Basics - Anfänger-Themen 15
J Array Speicherplatz berechnen Java Basics - Anfänger-Themen 35
H Eingabedaten berechnen Java Basics - Anfänger-Themen 9
B Tranportkosten berechnen mit unterschiedlichen MwSt Java Basics - Anfänger-Themen 9
L Anzahl der Paare deren Summe = 0 ergibt berechnen Java Basics - Anfänger-Themen 0
V Erste Schritte Berechnen von Sinus; sin(x) ohne Math.* Java Basics - Anfänger-Themen 1
J Hilfe bei Java Aufgabe (Restschuld berechnen) Java Basics - Anfänger-Themen 11
N Ein Datum berechnen Java Basics - Anfänger-Themen 3
T Sparplan berechnen Java Basics - Anfänger-Themen 4
F Abstand zum Durchschnitt von 5 Zahlen berechnen... Java Basics - Anfänger-Themen 16
B java.util.Date berechnen Java Basics - Anfänger-Themen 11
P Mittelwert Arrayelemente berechnen Fehler Java Basics - Anfänger-Themen 5
CptK Best Practice Schussparabel berechnen Java Basics - Anfänger-Themen 3
T Modulo / Pow berechnen Java Basics - Anfänger-Themen 4
E Statistische Kennzahlen berechnen Java Basics - Anfänger-Themen 2
F Switch Case Modulo berechnen Java Basics - Anfänger-Themen 12
B mehrere Werte mit scanner und while schleife einlesen, max berechnen bzw addieren Java Basics - Anfänger-Themen 2
C Preis berechnen mit Java Java Basics - Anfänger-Themen 4
B Zahl in String abspeichern und später berechnen Java Basics - Anfänger-Themen 15
N Best Practice Image recognition fuzzy Superhash berechnen Java Basics - Anfänger-Themen 1
Dawinartor Erste Schritte Schaltjahr berechnen Java Basics - Anfänger-Themen 1
L Pi berechnen Java Basics - Anfänger-Themen 1
CptK Term (als String) berechnen und ausgeben Java Basics - Anfänger-Themen 10
L Den Winkel zwischen zwei Vektoren berechnen! Java Basics - Anfänger-Themen 2
J Variablen arithmetischen Mittelwert berechnen Java Basics - Anfänger-Themen 5
K Matrixen berechnen nach Worker Master Paradigma mit Threads Java Basics - Anfänger-Themen 4
R Winkel berechnen bzw. Geraden sortieren Java Basics - Anfänger-Themen 33
I Schnittpunkt zweier Geraden berechnen Java Basics - Anfänger-Themen 25
M Erste Schritte Mittelwert berechnen -> Methode in der Methode? Java Basics - Anfänger-Themen 14
S Compiler-Fehler Schaltjahr berechnen Java Basics - Anfänger-Themen 5
B Fakultätsfunktion Rekursiv Berechnen aber mit Array Java Basics - Anfänger-Themen 10
S Durchschnitt berechnen aus zwei Textfeldern Java Basics - Anfänger-Themen 21
D Summe berechnen mit verändertem Wert aus Schleife Java Basics - Anfänger-Themen 1
R Liga Berechnen Java Basics - Anfänger-Themen 1
P Klassen Berechnen mehrerer Map-Werte Java Basics - Anfänger-Themen 13
R Fussballtabellen berechnen Java Basics - Anfänger-Themen 12
J Fibonacci -Folge rekursiv berechnen Java Basics - Anfänger-Themen 18
J Durchschnitt jeder Zeile und und Spalte in einem 2D Arrays berechnen Java Basics - Anfänger-Themen 6
F ISBN Prüfziffer berechnen Java Basics - Anfänger-Themen 17
F Die Teilersumme einer Eingabe berechnen Java Basics - Anfänger-Themen 11
S Negafibonacci Folge berechnen Java Basics - Anfänger-Themen 24
G Array Mittelwert berechnen, wie? Java Basics - Anfänger-Themen 8
S Primzahlen berechnen funktioniert nicht richtig Java Basics - Anfänger-Themen 1
N Mit LocalDate alter berechnen Java Basics - Anfänger-Themen 3
J Laufzeit berechnen/Laufzeitanalyse Java Basics - Anfänger-Themen 2
N Arrays mit Zufallzahlen füllen und Statistiken berechnen Java Basics - Anfänger-Themen 5
A Wochentag berechnen Java Basics - Anfänger-Themen 10
Ste3et_C0st Vectoren berechnen Java Basics - Anfänger-Themen 8
L Durchschnitt in der Schleife berechnen Java Basics - Anfänger-Themen 11
A Kreisumfang/-Fläche vom Kreis berechnen Java Basics - Anfänger-Themen 39
L Wochentag berechnen Java Basics - Anfänger-Themen 5
L Rekursive Methode a * b berechnen Java Basics - Anfänger-Themen 2
B OOP Summe aus verschiedenen Instanzen einer Klasse berechnen Java Basics - Anfänger-Themen 2
N Dauer zwischen zwei LocalDateTime Objekten berechnen? Java Basics - Anfänger-Themen 4
P Ausdrücke berechnen Java Basics - Anfänger-Themen 2
V Mittelwert berechnen Java Basics - Anfänger-Themen 31
H Datentypen Tage zwischen zwei Datums berechnen Java Basics - Anfänger-Themen 4
P Quadrate berechnen Java Basics - Anfänger-Themen 3
S OOP Datumsunterschied in Tagen berechnen Java Basics - Anfänger-Themen 3
M Methoden Aus Timestamp das Datum berechnen Java Basics - Anfänger-Themen 3
B Schaltjahre berechnen! Java Basics - Anfänger-Themen 1
A werte in einem String berechnen Java Basics - Anfänger-Themen 3
F Checksummen aus int-Array berechnen Java Basics - Anfänger-Themen 3
F Toto-Tipp-Reihen berechnen Java Basics - Anfänger-Themen 1
N Threads Exception in thread "main"... Feher bei dem Versuch ein Radius zu berechnen Java Basics - Anfänger-Themen 4
R Quersumme berechnen - Methodenproblem Java Basics - Anfänger-Themen 1

Ähnliche Java Themen

Neue Themen


Oben