Java – die besten Beiträge

Hilfe: JAVA, Histogramm erstellen.

Hallo Forumuser,

ich stehe vor folgendem Problem. Und zwar muss ich für Programmiertechnik folgendes Programm erstellen, und sitze schon verzweifelt zwei Wochen vor dem Programm und komme selbst mit Hilfslektüren nicht dahinter. Wenn ihr mir helfen könntet, wäre ich sehr dankbar.

Hier das vorgegebene Programm, an den Stellen 'TODO' muss programmiert werden.

// Histogramm.java package aufgabe2;

import java.util.Scanner;

/** * Histogramm liest ganze Zahlen zwischen 1 und 6 ein und * gibt deren Häufigkeitsverteilung als Histogramm aus. * @author TODO: Name eintragen * @version TODO: Datum eintragen */ public final class Histogramm { private Histogramm() { }

private static final Scanner EINGABE = new Scanner(System.in);

/**
 * main ist der Startpunkt des Programms.
 * @param args wird nicht verwendet.
 */
public static void main(final String[] args) {

    /* TODO: (1) hier ein Feld von Zaehlern definieren */


    //-------------------------------------------------- Zahlen einlesen
    System.out.println("Ganze Zahlen zwischen 1 und 6 eingeben "
                + "(Ende mit Strg-D):");

    while (EINGABE.hasNext()) {
        int number = EINGABE.nextInt();

        /* TODO: (2) hier Anweisungen fuer das
                     Pruefen und Zaehlen der Eingabe schreiben */



        //---------------------------------------------- Histogramm ausgeben

    /* TODO: (3) hier Anweisungen fuer die Histogrammausgabe schreiben */


}

}

Konsolenausgabe, sollte dann folgende sein:

Beispiel (Eingaben des Benutzers sind fett gedruckt: 1 2 3 ...):

Ganze Zahlen zwischen 1 und 6 eingeben (Ende mit Strg-D):
1 1 2 2 2 3 3 3 3 4 4 5 5 5 6 7
Falsche Eingabe wird ignoriert: 7
3 5 5 5 5 5 5 5 5 6
Strg-D
Histogramm:
11 (2)
222 (3)
3333$ (5)
44 (2)
5555$5555$5 (11)
66 (2)

Vielen, vielen Dank bereits im Vorfeld!

Astille

Java, histogramm

Programmieren eines Vokabeltrainer in JAVA

Also ich habe folgende Aufgabe bekommen: ** Programmiere einen kleinen Vokabeltrainer. Er soll aus einer Textdatei deutsche und englische Vokabeln in zwei getrennte Listen einlesen und zu einer zufällig ausgegebenen Vokabel drei Lösungsmöglichkeiten zum Anklicken anzeigen.**

Mein Problem finde ich leider nicht so richtig. Habe eine Textdatei eröffnet und immer Deutsch englisch abwechselnd die Vokabeln eingetragen. z.B. gehen nächste Zeile go.

Das ist mein Quellcode:

package kapitel8;

import javax.swing.*;

import java.awt.*; import java.awt.event.*; import java.util.*; import java.io.*;

public class Aufgabe2 extends JFrame implements ActionListener, AdjustmentListener {

// Attribute
private JButton button1, button2;
private JLabel anzeige;
private JRadioButton[] option = new JRadioButton[3];
private ButtonGroup gruppe;
private Box top, bottom, middle, buttons, auswahl, bigBox;
final String dateiname = "Vokabeln.txt";
private int MAX = 0, nr = 0;
private ArrayList deutsch = new ArrayList();
private ArrayList englisch = new ArrayList();

// Vokabeln einlesen
public void readDiagnoseText() {
    try {
        BufferedReader Datei = new BufferedReader(new FileReader(dateiname));
        boolean dateiende = false;
        while (!dateiende) {
            String zeile = Datei.readLine();
            if (zeile == null)
                dateiende = true;
            else
                deutsch.add(zeile);
            zeile = Datei.readLine();
            if (zeile == null)
                dateiende = true;
            else
                englisch.add(zeile);
            nr++;
        }
        Datei.close();
    } catch (IOException x) {
        JOptionPane.showMessageDialog(null, "Kann keine Daten laden!");
        System.exit(0);
    }
    MAX = nr - 2;
}

// Buttons erzeugen und Buttons mit Ereignissen verknüpfen
public void createComponents() {
    button1 = new JButton("Neue Vokabel");
    button2 = new JButton("Prüfen");
    anzeige = new JLabel("Drücke auf Neue Vokabel");
    gruppe = new ButtonGroup();
    auswahl = Box.createVerticalBox();
    for (int i = 0; i < 3; i++) {
        option[i] = new JRadioButton("***");
        option[i].addActionListener(this);
        gruppe.add(option[i]);
        auswahl.add(option[i]);
    }
    top = Box.createHorizontalBox();
    bottom = Box.createHorizontalBox();
    middle = Box.createHorizontalBox();
    buttons = Box.createHorizontalBox();
    bigBox = Box.createVerticalBox();
    button1.addActionListener(this);
    button2.addActionListener(this);
}

// Die Form einstellen
public void setFormLayout() {
    button1.setFont(new Font("Arial", Font.BOLD, 20));
    button2.setFont(new Font("Arial", Font.BOLD, 20));
    anzeige.setFont(new Font("Arial", Font.CENTER_BASELINE, 25));
    for (int i = 0; i < 3; i++) {
        option[i].setFont(new Font("Arial", Font.ITALIC, 20));
    }
    top.setPreferredSize(new Dimension(430, 20));
    bottom.setPreferredSize(new Dimension(380, 10));
    middle.setPreferredSize(new Dimension(430, 10));
    auswahl.setPreferredSize(new Dimension(380, 100));
    bigBox.setPreferredSize(new Dimension(450, 200));
    bigBox.setBorder(BorderFactory.create
programmieren, Java

Meistgelesene Beiträge zum Thema Java