R
Reaper
Gast
Hallo arbeite gerade an einem Programm dass Dezimalzahlen in Hexzahlen ausgeben soll. Mache dass mit Arrays. Nun will es einfach nicht in meinen Kopf gehen wie man in einem Array Zahlen und Buchstaben speichern kann. Eigentlich ja unmöglich oder? Aber wie soll dann dass Programm funktionieren wenn ich mittels Array ausgeben will? Hab es auch schon mit 2 verschiedenen Arrays ausprobiert klappt aber irgendwie auch nicht siehe Versuch unten. Hab auch mal irgendwas gehört dass ich auf UNICODE Tabelle mittels Zahlen zugreifen kann. Ist das die Lösung? Und wenn wie?
Edit von L-ectron-X: Code-Tags eingefügt.
Code:
class hex{
public static void main(String[] arg){
char ent;
char zs;
char j = 'b';
char o = 'o';
char h = 'h';
int d;
int zahl;
int index;
int n = 2;
int b =0;
char ch1 = 'A';
do{
IO.write("Geben Sie eine positive ganze Zahl ein: ");
zahl = IO.readInt();
IO.readLn();
IO.write("Geben Sie das Zielzahlensystem (b=binaer, o=oktal, h=hexadezimal): ");
zs = IO.read();
IO.readLn();
int zahl1 = zahl;
//hex
if (zs == h){
b = 16;
}
d = 0;
do{
zahl = zahl/2;
d++;
}while(zahl > 0);
//zahl <= 0
char[] hex = {'A','B','C','D','E','F'};
int[] kzahl = new int[d];
index = d - 1;
do{
kzahl[index] = zahl1 % b;
switch(zahl1 % b ){
case 10: hex[1] = 10 ;
break;
/*case 11: IO.write('B');
break;
case 12: IO.write('C');
break;
case 13: IO.write('D');
break;
case 14: IO.write('E');
break;
case 15: IO.write('F');
break;
*/
//}
zahl1 = zahl1/b;
index = index - 1;
}while(zahl1 > 0 && index < d);
//zahl <= 0 %% index < d
for(int i = index+1; i <= (d-1); i++){
IO.write(kzahl[i]);
}
for(int i = 0; i < 6; i++){
IO.write(hex[i]);
}
IO.writeLn(); //Zeilenwechsel
IO.write("Noch eine Umwandlung? [j/n]: ");
ent = IO.read(); //Hier wird char gelesen aber nur wenn ich zuvor IO.readLn(); einegegeben habe
IO.readLn();
}while ((ent == 'J') || (ent == 'j')); //Hier wird darauf geachtet dass er das Programm solange
//wiederholt bis man 'J' oder 'j' eingegeben hat -> dann
//Bedingung erfüllt und das Programm wird beendet.
}
}
Edit von L-ectron-X: Code-Tags eingefügt.