zahl binär darstellen

wpb

Erfahrenes Mitglied
hy leute!

also ich hab folgendes problem:

ich muss eine zahl (int) einlese, und diese in binärer Darstellung
ausgeben.
Ich darf allerdings nur die Operatoren <<,&, usw. verwenden.

hab gedacht es könnte mit ein array (bool bin[8]) funktionieren.
das array sollt mit ner schleife durchlaufen werden, und die zahl immer mit &1 kontrolliert
werden. anschließend mit << bitweises verschieben wieder kontrollieren, usw.

naja hat aber überhaupt nicht funktioniert. (bzw. ich habe probleme das auch in einem programmcode umzusetzen.)

Kann wer helfen?
 
Hallo,

schau mal hier:

Code:
#include <stdio.h>

int main(){
    int a = 5;
    int i = 0;
    int int_bit_size = sizeof(int) * 8;
    for(; i < int_bit_size; i++){
        printf("%d", (a & 0x80000000) >> 31);
        a <<= 1;
    }
    printf("\n");
    return 0;
}

Gruß

RedWing
 
Is zwar kein C sondern Java, aber der Code is ja ähnlich :)

Code:
import java.io.*;

class binaer {
	// (Globale) Variablen
	// -------------------
	static String ergebnis;

	// Hauptprogramm (Test des Algorithmus, Main Funktion)
	// ---------------------------------------------------
	void mainFunction() throws Exception {

			// Aufruf des Algorithmus
			ergebnis = bin(0,"");
			// Ausgabe des Ergebnisses
			System.out.println(ergebnis);

	}
	// Unterprogramme (Implementierung des Algorithmus, Subfunktionen)
	// ---------------------------------------------------------------
	static String bin(int x, String ausgabe)
	{
		if (x==0)
		{
			return ausgabe;
		}
		else 
		{
			return bin((x/2),(x%2)+ausgabe);
		}
	}
	// Technisches Beiwerk
	// -------------------
	static BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
	public static void main(String[] args) throws Exception {
			(new binaer()).mainFunction();
	}
}
 

Neue Beiträge

Zurück