Hallo,
ich würde gern eine Dezimal- in eine Dualzahl umwandeln. Nun habe ich mir gedacht, ich lese die Dezimalzahl von der Eingabeaufforderung ein und übergebe sie an eine Methode, die dann anhand des Horner-Schemas die Dualzahl berechnet. Soweit noch alles Ok.
Ich lasse eine nicht-abweisende Schleife solange eine Ganzzahldivision und Modulooperation durchführen, bis die Ganzzahldivision den Wert null erreicht hat. Die Ergebnisse der Modulooperation geben mir ja die nullen und einsen meiner Dualzahl wieder, die ich gern in ein Array speichern würde. Jedoch muss ich beim anlegen des Arrays seine Größe kennen. Wie bekomme ich es hin, dass ich mein array während der Laufzeit beliebig in seiner größe ändern kann?
Bei jedem neuen Modulo-rest würde ich erst das Array um eine Größeneinheit erhöhen und den Wert eintragen.
Vielleicht gibt es ja noch einfacher Lösungen, wie man eine Dezimalzahl in eine Dualzahl umwandelt. Aber ich hab nix gefunden.
Eine weitere kleine Frage wäre, wieso er hier in diesem Beispiel nicht rundet.
Ich würde gern immer aufrunden, egal ob da unzählige nullen und dann zum schluss mal ne eins kommt.
Bye Ollsen
ich würde gern eine Dezimal- in eine Dualzahl umwandeln. Nun habe ich mir gedacht, ich lese die Dezimalzahl von der Eingabeaufforderung ein und übergebe sie an eine Methode, die dann anhand des Horner-Schemas die Dualzahl berechnet. Soweit noch alles Ok.
Ich lasse eine nicht-abweisende Schleife solange eine Ganzzahldivision und Modulooperation durchführen, bis die Ganzzahldivision den Wert null erreicht hat. Die Ergebnisse der Modulooperation geben mir ja die nullen und einsen meiner Dualzahl wieder, die ich gern in ein Array speichern würde. Jedoch muss ich beim anlegen des Arrays seine Größe kennen. Wie bekomme ich es hin, dass ich mein array während der Laufzeit beliebig in seiner größe ändern kann?
Bei jedem neuen Modulo-rest würde ich erst das Array um eine Größeneinheit erhöhen und den Wert eintragen.
Vielleicht gibt es ja noch einfacher Lösungen, wie man eine Dezimalzahl in eine Dualzahl umwandelt. Aber ich hab nix gefunden.
Eine weitere kleine Frage wäre, wieso er hier in diesem Beispiel nicht rundet.
Code:
public class test {
public void go(){
double i;
Math.floor(i = Math.log(512+1) / Math.log(2));
System.out.println(i);
}
public static void main (String[] args) {
test a = new test();
a.go();
}
}
Ich würde gern immer aufrunden, egal ob da unzählige nullen und dann zum schluss mal ne eins kommt.
Bye Ollsen