Hey Leute, ich habe als frischer Informatikstudent ein kleines Problem.

Die Aufgabe lautete: Wenn ich etwas eingebe, beispielsweise eine Dezimalzahl, dann soll dafür die jeweilige Hexadezimal-, Binär- oder Oktalzahl ausgegeben werden. Ein Programm für eine Binär- und Dezimalzahleingabe habe ich schon geschrieben. Diese verschiedenen Eingaben sollen nacheinander funktionieren, d.h. das folgende Programm muss dann nur noch in das Hauptprogramm gebracht werden, was denke ich kein Problem sein wird.

Problem: Eine Hexadezimalzahl kann eine Zahl oder ein Buchstabe sein, deshalb konnte ich für die einzugebende Zahl kein "int" nehmen. Ich habe jedoch keinerlei Ahnung wie ich das Programm dazu bringen kann einen String als int zu sehen... Ich habe deshalb etwas versucht was jedoch aus irgendeinem Grund nicht funktioniert. im Hauptprogramm habe ich Integer.toBinaryString(), Integer.toHexalString etc. verwendet.

Kann mir jemand das Brett vor dem Kopf entfernen? (bzw. den Denkfehler beheben....)

PROGRAMM:

import java.util.Scanner;

public class ZahlensystemHex {

public static void main(String[] args) 
{
     Scanner sc1 = new Scanner(System.in);


     System.out.println("Bitte geben Sie eine Zahl hexadezimal ein");


     String hex = sc1.next(); 


     int hex1 = Integer.parseInt(hex, 16); 
     System.out.println("Dezimal: " + Integer.toString(hex1));
     System.out.println("Binär: " + Integer.toBinaryString(hex1));


     sc1.close();
}

}