studyklar
GdI 2 · Übungsblatt 1 · Aufgabe 1

Lohnrechner: Eingabe mit Scanner und Runden auf zwei Stellen

Das erste eigene Java-Programm: Es fragt auf der Konsole nach Stundenlohn und Arbeitsstunden und gibt den Lohn aus. In Teil b) wird der Lohn auf Cent gerundet. Rechts steht das fertige Programm, die Zeilen zum aktuellen Schritt sind hervorgehoben. Mit Weiter geht es Schritt für Schritt voran. Ein Klick auf einen Schritt springt direkt dorthin.

Die Aufgabe

Aufgabe 1

a) Schreiben Sie ein Programm, das den Lohn einer Mitarbeiterin oder eines Mitarbeiters ausrechnet. Es soll auf der Konsole zunächst der Stundenlohn in Euro und danach die Zahl der gearbeiteten Stunden eingegeben werden. Anschließend wird der Lohn für diese gearbeiteten Stunden in Euro ausgegeben. Verwenden Sie für das Einlesen die Klasse „Scanner“ aus dem Package java.util. Denken Sie daran, dass beim Einlesen mit „nextDouble( )“ Kommazahlen mit Komma und nicht mit Punkt eingegeben werden müssen (also 5,8 statt 5.8).

b) Wenn die Rechnung einen krummen Wert ergibt, werden sehr viele Nachkommastellen angegeben. Ändern Sie das Programm so ab, dass auf zwei Nachkommastellen gerundet wird. Hierbei kann die Methode „Math.round( )“ hilfreich sein, die eine Kommazahl auf eine ganze Zahl rundet.

Gesucht ist ein Programm, das zwei Zahlen von der Tastatur einliest, sie multipliziert und das Ergebnis ausgibt. Die Konsole ist das Textfenster unter dem Code in Eclipse: Dort schreibt das Programm seine Fragen hin, und dort tippt man die Antworten ein.

Merke: Jedes Programm folgt hier demselben Muster: einlesen, rechnen, ausgeben. Für jeden Wert gibt es eine Variable.
  1. Teil a): Rahmen, Scanner, zwei Eingaben, Rechnung, Ausgabe.
  2. Teil b): Ein krummes Ergebnis mit Math.round auf zwei Stellen runden.

Der Rahmen: Klasse und main-Methode

import java.util.Scanner; public class Lohn {     public static void main(String[] args) {        Scanner scanner = new Scanner(System.in);         System.out.print("Stundenlohn in Euro: ");        double stundenlohn = scanner.nextDouble();         System.out.print("Zahl der gearbeiteten Stunden: ");        double gearbeiteteStunden = scanner.nextDouble();         double lohn = stundenlohn * gearbeiteteStunden;         lohn = Math.round(lohn * 100) / 100.0; // Teil b)         System.out.println("Lohn: " + lohn + " Euro.");    }}

Jedes Java-Programm steckt in einer Klasse. Wir nennen sie Lohn; die Datei muss dann Lohn.java heißen. In der Klasse steht die Methode main. Startet man das Programm, führt Java die Zeilen in main von oben nach unten aus.

Die Zeile mit main schreibt man immer genau so ab. Was die einzelnen Wörter bedeuten, kommt in späteren Kapiteln.

Einen Scanner anlegen

import java.util.Scanner;
        Scanner scanner = new Scanner(System.in);

Zum Einlesen von der Tastatur gibt es die Klasse Scanner. Sie liegt im Paket java.util. Darum steht ganz oben der Import: Er sagt Java, wo es die Klasse findet.

In main erzeugen wir mit new ein Scanner-Objekt und speichern es in der Variablen scanner. System.in heißt: Lies von der Tastatur.

Noch 8 Schritte bis zum Ergebnis
Den ganzen Lösungsweg sehen Studierende und Lehrende der HS KL. Registriere dich mit deiner Adresse @stud.hs-kl.de oder @hs-kl.de, dann geht es hier direkt weiter.

Das Programm Lohn

fertig, mit Teil b) in Zeile 16

Abbildung 1Das Programm Lohn

fertig, mit Teil b) in Zeile 16

import java.util.Scanner; public class Lohn {     public static void main(String[] args) {        Scanner scanner = new Scanner(System.in);         System.out.print("Stundenlohn in Euro: ");        double stundenlohn = scanner.nextDouble();         System.out.print("Zahl der gearbeiteten Stunden: ");        double gearbeiteteStunden = scanner.nextDouble();         double lohn = stundenlohn * gearbeiteteStunden;         lohn = Math.round(lohn * 100) / 100.0; // Teil b)         System.out.println("Lohn: " + lohn + " Euro.");    }}
LegendeDas ganze Programm aus Teil a) und b).