Inhaltsverzeichnis
Verbergen
Runden auf zwei Nachkommastellen
Bei integer-Zahlen muss das Ergebnis zusammengesetzt werden:
double kommazahl = 123.290402;
int ganzzahl = (int) kommazahl; // Nachkommastelle abschneiden
int kommastelle = (int) (kommazahl * 100)%100 ; // zwei Nachkommastellen extrahieren
// Zahl in der Ausgabe zusammensetzen
System.out.println("Preis=" + ganzzahl + "." + kommastelle );
Für double-Zahlen gibt es mehrere Möglichkeiten:
double zahl = 1.23456;
double d = Math.pow(10, 2);
System.out.println(Math.round(zahl * d) / d);
… oder …
double number = 1234.565;
System.out.println(number+" gerundet: "+String.format("%1.2f", number));
Test auf Teilbarkeit
Eine ganze Zahl ist teilbar durch eine andere Zahl, falls bei der Division kein Rest ensteht. Um diese Bedingung zu Testen benötigt man also eine Funktion, die den Rest bei der Division berechnet.
Bei der Division zweier Integerzahlen ist das Ergebnis ebenfalls wieder vom Datentyp integer. Damit man die Division vollständig durchführen kann, benötigt man zwei Funktionen: eine, die das ganzzahlige Ergebnis berechnet und eine für den Rest bei der Division.
Aus der Grundschule ist die Division mit Rest bekannt:
17 : 4 = 4 Rest 1
In Java gibt es nun angepasste Funktionen:
int a = 17, b = 4;
System.out.println(a / b); // a / b = 4 (ganzzahlige Division)
System.out.println(a % b); // a % b = 1 (Restfunktion; modulo)
Damit kann nun die Teilbarkeit (z. B. durch 5) überprüft werden:
int a, b;
System.out.print("Gib a ein: "); a = Input.readInt();
if ((a % 5) == 0) {
System.out.println(a + " ist durch 5 teilbar");
}