Binärzahlen beliebiger länge

Status
Nicht offen für weitere Antworten.

Binary

Mitglied
Ich habe folgendes Programm geschrieben. Es rechnet Dezimalzahlen in Binärzahlen um. Die Ausgegebene Zahl stimmt zwar (laut Windows Taschenrechner), aber er setzt immer Nullen vor die Zahl (klar, liegt an der Schleife i<10). Wie kann ich das Programm umschreiben, um mir beliebig lange Binärzahlen auszugeben, also auch mehr als 10 Stellen und weniger als 10 Stellen, OHNE, dass er mir die Binärzahl mit Nullen verlängert?

Code:
public class DeziDual

{

	public static int[] Dezidual (int Dezi)

	{

		
		int Stelle=10;
		int Dual[] = new int[Stelle];
		
		for (int i=0; i<10; i++)
		{
			Dual[i]=Dezi%2;
			Dezi=Math.round(Dezi/2);
		}
				
		return Dual;

	}
	
	public static void main (String args[])
	throws IOException

	{

		InputStreamReader Input = new InputStreamReader(System.in);
		BufferedReader DataIn = new BufferedReader(Input);
		
		int Dezi=0;
		int Stellen=0;
		int Dual[] = new int[Stellen];
		String Dualzahl="";
		
		System.out.println("Bitte geben sie einen Integer-Wert an.");
		Dezi=Integer.parseInt(DataIn.readLine());
		
	
		Dual=Dezidual(Dezi);
		
		for (int i=0; i<Dual.length; i++)

		{

			Dualzahl=Dual[i]+Dualzahl;

		}
		
		System.out.println("Der Binaerwert der Zahl ist: " + Dualzahl);

	}

}
 
B

Beni

Gast
Gabs da nicht mal so eine Formel, etwa:

Code:
int stellen = (int)Math.log( dual ) / Math.log( 2 ) + 1;

:?:

mfg Beni

P.S. anstelle von Dezi=Math.round(Dezi/2); kann man einfacher Dezi >>= 1; schreiben (rechter Bitshiftoperator).
 

EagleEye

Bekanntes Mitglied
das geht auch leichter man kann mit
Code:
Integer.toBinaryString()
einen Integerwert in einen Binärzahl schreiben das geht auch mit Oktal und Hexa Zahlen ;)
 

Nobody

Top Contributor
um näher an deiner lösung zu bleiben:
zahl -> string daraus
durchläufe -> aus der länge des strings
 

Slava

Bekanntes Mitglied
Code:
public static int[] Dezidual (int Dezi) 

   { 

       
      int Stelle=10; 
      int Dual[] = new int[Stelle]; 
       
      for (int i=0; i<10; i++) 
      { 
         Dual[i]=Dezi%2; 
         Dezi=Math.round(Dezi/2);//wie schafst du es einen übergabeparameter von typ int ( Dezi )zu verendern?!
      } 
             
      return Dual; 

   }
wie schafst du es einen übergabeparameter von typ int ( Dezi )zu verendern?!
 

Nobody

Top Contributor
inwiefern verändern?

meinst du umwandeln in nen anderen typ?
ganz normal typcasting oder es geht teilweise sogar direkt (zb int to double)
 
M

Manfred

Gast
Also ich hab zufällig soetwas kürzlich geschrieben, nur gebe ich einen Stringwert zurück, da die Binärzahl ja sehr lange werden kann

Falls dich interessiert:

Code:
public class Dez2Bin
{
    public Dez2Bin()
    {
    }
    
    public String wandle(int dez)
    {
        int i=0, rest, ergebniss;
        String[] binary = new String[20];
        String temp="";
        
           ergebniss=dez;
           do
           {   
               rest=ergebniss%2;
               ergebniss = ergebniss / 2;
               
               binary[i]=rest+"";
                              
               i++;
           }
           while(ergebniss != 0);
           
           for(int t=i-1; t>=0; t--)
           {
                temp+=binary[t];
           }
           
           return temp;
       }
}
 
B

bygones

Gast
Hier mal eine speicherfreundlichere Lösung (in Bezug auf Manfreds Lösung). Das ganze String - anfügen ist nicht sehr speicherfreundlich, da die String Klasse final ist und somit immer für jedes Anhängen ein neues Objekt intern generiert wird --> für sowas IMMER die Klasse StringBuffer nehmen, die ist da flexibler (außerdem hat sie ne reverse Methode *g*) !

Code:
public String wandle2(int dez) {
    StringBuffer b = new StringBuffer();
    int rest;

    do {
        rest = dez % 2;
        dez = dez / 2;
	
        b.append(rest);
    }
    while(dez != 0);
    
    return b.reverse().toString();
}
 

Manfred

Bekanntes Mitglied
Aha, nicht schlecht, jetzt weiss ich wenigstens was mein Lehrer meinte, als er sagte, dass String nicht so gut ist und wir bald etwas anderes durchnehmen....
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Binärzahlen auflisten, falsche Ausgabe? Java Basics - Anfänger-Themen 1
B Spielereien mit bit wise Operatoren und langen Binärzahlen Java Basics - Anfänger-Themen 3
M Array Addition Binärzahlen Java Basics - Anfänger-Themen 9
T Binärzahlen Java Basics - Anfänger-Themen 2
G Binärzahlen multiplizieren Java Basics - Anfänger-Themen 5
Ö Binärzahlen Java Basics - Anfänger-Themen 11
R Binärzahlen addieren Java Basics - Anfänger-Themen 8
Binary.Coder Skalarprodukt mittels long und binärzahlen Java Basics - Anfänger-Themen 5
W Binärzahlen Java Basics - Anfänger-Themen 7
G Dezimalzahlen in Binärzahlen Java Basics - Anfänger-Themen 9
C binärzahlen addieren Java Basics - Anfänger-Themen 4
R in Binärzahlen umrechnen Java Basics - Anfänger-Themen 15
K Literal für Binärzahlen ? Java Basics - Anfänger-Themen 12
B Beliebiger String gegeben Suche Datum in String Java Basics - Anfänger-Themen 6
L Feld mit beliebiger Anzahl von Buchstaben füllen... Java Basics - Anfänger-Themen 5
J Interface Bubblesort soll Arrays beliebiger Referenztypen sortieren können. Java Basics - Anfänger-Themen 5
C Erzeugung beliebiger Anzahl von Objekten in der ArrayList Java Basics - Anfänger-Themen 2
R Türme von Hanoi mit beliebiger Startposition Java Basics - Anfänger-Themen 5
A Beliebiger String --> Buchstaben und Zahlen Java Basics - Anfänger-Themen 4
M Länge eines Arrays als Variable speichern möglich? Java Basics - Anfänger-Themen 14
H Liste nach String-Länge sortieren Java Basics - Anfänger-Themen 1
D Länge einer Liste aufrufen. Java Basics - Anfänger-Themen 19
S Die durchschnittliche Länge der Strings Java Basics - Anfänger-Themen 11
Hzrfa Länge der längsten Kette java Java Basics - Anfänger-Themen 56
BeginnerJava String mit vorgegebener Länge und Buchstaben erzeugen/ mit Leerstellen Java Basics - Anfänger-Themen 8
JavaBeginner22 Wort mit der größten Länge ausgeben Java Basics - Anfänger-Themen 4
I Array Länge in Klasse festlegen Java Basics - Anfänger-Themen 1
Csircc Neuer Array mit geringerer Länge und selben werten. Java Basics - Anfänger-Themen 2
P Länge des längsten möglichst klein Java Basics - Anfänger-Themen 2
districon 2D Array - Länge zuweisen Java Basics - Anfänger-Themen 1
t2im Java Array-Länge ändern? Java Basics - Anfänger-Themen 22
W Best Practice Tabulatoren verschiedener Länge ersetzen Java Basics - Anfänger-Themen 8
H Klassen Die Länge einer Text-Node bestimmen Java Basics - Anfänger-Themen 2
J Objekt-Array dynamischer Länge aus Benutzereingaben erstellen Java Basics - Anfänger-Themen 6
G Variablen Array Länge über den Konstruktor definieren Java Basics - Anfänger-Themen 4
M Strings mit gerader und ungerader Länge ausgeben Java Basics - Anfänger-Themen 10
N Länge eines Arrays in einem Objekt testen Java Basics - Anfänger-Themen 51
L Zwei sortierte Subarrays mit gleicher Länge zusammenfügen Java Basics - Anfänger-Themen 2
A Arrays kombinieren (länge eines Arrays kann 0 sein) Java Basics - Anfänger-Themen 6
S Java Array Länge aus anderer Klasse lesen Java Basics - Anfänger-Themen 1
O Länge eines Arrays Java Basics - Anfänger-Themen 6
M Die länge von char Java Basics - Anfänger-Themen 6
A Best Practice Undefinierte länge bei arrays Java Basics - Anfänger-Themen 4
E Array-list mit einer bestimmten Länge Java Basics - Anfänger-Themen 17
F Maximale Länge eines Strings Java Basics - Anfänger-Themen 5
L Länge der dritten Dimension eines dreidimensionalen Arraya Java Basics - Anfänger-Themen 1
T Länge einer Textdatei Java Basics - Anfänger-Themen 11
C Array - Länge dynamisch übergeben Java Basics - Anfänger-Themen 7
N Array mit unbestimmter länge Java Basics - Anfänger-Themen 12
T String länge messen in mm Java Basics - Anfänger-Themen 1
M Generierter Tannenbaum - String Länge Java Basics - Anfänger-Themen 1
T String/int länge Java Basics - Anfänger-Themen 2
I Länge von mehrdimensionalen Array Java Basics - Anfänger-Themen 5
A Länge Substring Java Basics - Anfänger-Themen 1
D Zweidimensionales Array (Länge) Java Basics - Anfänger-Themen 2
S Listnode Länge Java Basics - Anfänger-Themen 2
shiroX Input/Output Array erstellen / Länge Java Basics - Anfänger-Themen 3
Z Erste Schritte Einlesen der Länge eines Feldes Java Basics - Anfänger-Themen 25
G Erste Schritte berechne länge von einträgen Java Basics - Anfänger-Themen 5
S Länge einer Zahl Java Basics - Anfänger-Themen 18
C Datentypen Array-Einträge überhalb der Array-Länge - welcher Wert? Java Basics - Anfänger-Themen 5
M Strings mit variabler Länge auffüllen Java Basics - Anfänger-Themen 6
J Alle Wörter der Länge n mit 0 und 1 Java Basics - Anfänger-Themen 17
S Länge eines Elements im String Array Java Basics - Anfänger-Themen 5
C Datentypen Array mit dynamischer Länge? Java Basics - Anfänger-Themen 14
M Länge der Strecke zwischen zwei Punkten Java Basics - Anfänger-Themen 10
P länge von array abfragen? Java Basics - Anfänger-Themen 2
D Erste Schritte Warum wird bei einem Array die Länge über Length ausgegeben? Java Basics - Anfänger-Themen 6
S Länge eines zweidimensionalen Feldes Java Basics - Anfänger-Themen 3
M Länge String Java Basics - Anfänger-Themen 3
A Länge einer Hexadezimalzahl in Bits Java Basics - Anfänger-Themen 40
P String- Länge Java Basics - Anfänger-Themen 3
A Klassen Eigene Datenklasse - Strings mit fixer Länge Java Basics - Anfänger-Themen 2
E Länge eines spez. Arrays Java Basics - Anfänger-Themen 10
E Länge eines Feldes ausgeben Java Basics - Anfänger-Themen 13
Gossi Datentypen Länge von Zahlentypen Java Basics - Anfänger-Themen 3
V Warten bis die Länge eines Strings nicht mehr 0 ist Java Basics - Anfänger-Themen 13
G Array mit zufälliger Länge Java Basics - Anfänger-Themen 4
D prüfen ob länge eines Arrays == 0 Java Basics - Anfänger-Themen 4
S Datentypen String mit fester Länge (Rückgabewert einer Methode) Java Basics - Anfänger-Themen 2
D Array anlegen ohne bekannte Länge? Java Basics - Anfänger-Themen 6
B Maximale Länge eines integer Arrays ? Java Basics - Anfänger-Themen 31
J Länge eines long wertes Java Basics - Anfänger-Themen 13
S ArrayList länge lässt sich nicht voreinstellen Java Basics - Anfänger-Themen 10
F String begrenzte Länge??? Java Basics - Anfänger-Themen 16
N List länge Java Basics - Anfänger-Themen 6
DStrohma Binärwörter der Länge n ausgeben Java Basics - Anfänger-Themen 3
G Länge eines Integers ermitteln? Java Basics - Anfänger-Themen 38
A array und seine länge Java Basics - Anfänger-Themen 5
G länge von string, string aus integer/char Java Basics - Anfänger-Themen 6
G Länge einer Enumeration feststellen Java Basics - Anfänger-Themen 15
T Länge von Strings im Array vergleichen Java Basics - Anfänger-Themen 2
N Array bei unbekannter Länge Java Basics - Anfänger-Themen 4
M unerklärbarer Fehler bei Array-Länge Java Basics - Anfänger-Themen 4
R Frage zur Länge von Textfeld und String Java Basics - Anfänger-Themen 4
G Warum hat char die Länge 2? Java Basics - Anfänger-Themen 9
G Länge eines Array trimmen oder dynamisch verändern. Java Basics - Anfänger-Themen 3
B JTable - Einstellen der Größe bzw. der Länge Java Basics - Anfänger-Themen 1
J Char-Array mit variabler Länge zurückliefern. Java Basics - Anfänger-Themen 11
G Keine feste Länge bei Objekten, warum nur Zeiger? Java Basics - Anfänger-Themen 8

Ähnliche Java Themen

Neue Themen


Oben