Java :: Aufgabe #67 :: Lösung #3
4 Lösungen
#67
Zahlenausgabe in verschiedenen Schreibweisen
Anfänger - Java
von pocki
- 26.11.2014 um 11:53 Uhr
Schreibe ein Programm, welches eine positive Ganzzahl in dezimaler Schreibweise entgegen nimmt.
Gib diese Zahl dann in binärer, oktaler und hexadezimaler Schreibweise, ohne Verwendung der integrierten Formatierungsfunktionen, wieder aus.
Beispiel:
Gib diese Zahl dann in binärer, oktaler und hexadezimaler Schreibweise, ohne Verwendung der integrierten Formatierungsfunktionen, wieder aus.
Beispiel:
Konsolenausgabe:
Zahl eingeben: 365
binär: 101101101
oktal: 555
hexadezimal: 16D
#3
von paddlboot (3970 Punkte)
- 10.07.2019 um 09:50 Uhr
Java-Code
import java.util.*; public class verschZahlen { public static void main (String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("Zahl eingeben:\t"); int zahl = scanner.nextInt(); bin(zahl); oktal(zahl); hex(zahl); scanner.close(); } public static void bin(int zahl) { String dual = ""; while(zahl > 0) { dual += zahl % 2; zahl /= 2; } String ausgabe = ""; for(int i = dual.length()-1; i >= 0; i--) { ausgabe += dual.charAt(i); } System.out.println("Binär: " + ausgabe); } public static void oktal(int zahl) { String okt = ""; while(zahl > 0) { okt += zahl % 8; zahl /= 8; } String ausgabe = ""; for(int i = okt.length()-1; i >= 0; i--) { ausgabe += okt.charAt(i); } System.out.println("Oktal: " + ausgabe); } public static void hex(int zahl) { String hex = ""; while(zahl > 0) { int temp = zahl % 16; switch(temp) { case 10: hex += "A"; break; case 11: hex += "B"; break; case 12: hex += "C"; break; case 13: hex += "D"; break; case 14: hex += "E"; break; case 15: hex += "F"; break; default: hex += temp; break; } zahl /= 16; } String ausgabe = ""; for(int i = hex.length()-1; i >= 0; i--) { ausgabe += hex.charAt(i); } System.out.println("Hexadezimal: " + ausgabe); } }
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1