Java :: Aufgabe #19 :: Lösung #8

9 Lösungen Lösungen öffentlich
#19

Durchschnittliche Niederschlagsmenge

Anfänger - Java von Freki - 27.12.2012 um 14:46 Uhr
Schreiben Sie ein Programm, das die durchschnittliche Niederschlagsmenge für die drei Monate April, Mai und Juni berechnet.
Deklarieren Sie eine Variable für jeden Monat. Berechnen Sie den Durchschnitt und geben Sie das Ergebnis in folgender Form aus:

Konsolenausgabe:

Niederschlag im April:    12
Niederschlag im Mai : 14
Niederschlag im Juni : 8
Durchschnitt: 11.333333333333
#8
vote_ok
von kollar (340 Punkte) - 22.12.2019 um 20:56 Uhr
Quellcode ausblenden Java-Code
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class Niederschlag {
	public static void main(String[] args) {
		FrNiederschlag frNiederschlag = new FrNiederschlag("Durchschnittliche Niederschlagsmenge");
	}
}

class FrNiederschlag extends JFrame implements ActionListener {
	JLabel lblApril = new JLabel("Niederschlag im April: ");
	JLabel lblMai = new JLabel(" Niederschlag im Mai: ");
	JLabel lblJuni = new JLabel("Niederschlag im Juni: ");
	JLabel lblDurchschnitt = new JLabel("Durchschnitt:");
	JTextField tfApril = new JTextField(15);
	JTextField tfMai = new JTextField(15);
	JTextField tfJuni = new JTextField(15);
	JTextField tfDurchschnitt = new JTextField(15);
	JButton button = new JButton("  OK  ");
	JPanel pApril = new JPanel();
	JPanel pMai = new JPanel();
	JPanel pJuni = new JPanel();
	JPanel pButton = new JPanel();
	JPanel pDurchschnitt = new JPanel();

	FrNiederschlag(String titel) {
		super(titel);
		setVisible(true);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setBounds(400, 350, 420, 250);
		setMinimumSize(new Dimension(400, 250));

		setLayout(new GridLayout(5, 2));

		tfApril.setHorizontalAlignment(JTextField.RIGHT);
		tfMai.setHorizontalAlignment(JTextField.RIGHT);
		tfJuni.setHorizontalAlignment(JTextField.RIGHT);
		tfDurchschnitt.setHorizontalAlignment(JTextField.RIGHT);
		tfDurchschnitt.setEditable(false);

		pApril.setLayout(new FlowLayout(FlowLayout.RIGHT, 40, 10));
		pMai.setLayout(new FlowLayout(FlowLayout.RIGHT, 40, 10));
		pJuni.setLayout(new FlowLayout(FlowLayout.RIGHT, 40, 10));
		pButton.setLayout(new FlowLayout(FlowLayout.RIGHT, 40, 6));
		pDurchschnitt.setLayout(new FlowLayout(FlowLayout.RIGHT, 40, 10));

		pApril.add(lblApril);
		pApril.add(tfApril);
		pMai.add(lblMai);
		pMai.add(tfMai);
		pJuni.add(lblJuni);
		pJuni.add(tfJuni);
		pButton.add(button);
		pDurchschnitt.add(lblDurchschnitt);
		pDurchschnitt.add(tfDurchschnitt);

		add(pApril);
		add(pMai);
		add(pJuni);
		add(pButton);
		add(pDurchschnitt);

		button.addActionListener(this);
	}

	public String berechneDurchschnitt(String stApril, String stMai, String stJuni) {
		String stDurchschnitt = "";
		double april;
		double mai;
		double juni;
		double durchschnitt;

		try {
			april = Double.parseDouble(stApril);
			mai = Double.parseDouble(stMai);
			juni = Double.parseDouble(stJuni);

			durchschnitt = (april + mai + juni) / 3;
			stDurchschnitt = Double.toString(durchschnitt);
		} catch (NumberFormatException e) {
			stDurchschnitt = "Bitte Zahlen eingeben!";
		}

		return stDurchschnitt;
	}

	@Override
	public void actionPerformed(ActionEvent evt) {
		tfDurchschnitt.setText(berechneDurchschnitt(tfApril.getText(), tfMai.getText(), tfJuni.getText()));
	}

}

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben
2114558

Du scheinst einen AdBlocker zu nutzen. Ich würde mich freuen, wenn du ihn auf dieser Seite deaktivierst und dich davon überzeugst, dass die Werbung hier nicht störend ist.