#include void umrechnen(int number); int main() { int number = 0; int validInput = 0; while (!validInput) { printf("Bitte geben Sie eine Zahl ein: "); if (scanf("%d", &number) != 1) { printf("Ungueltige Eingabe. Bitte geben Sie eine gueltige Zahl ein.\n"); while (getchar() != '\n'); } else { validInput = 1; } } umrechnen(number); return 0; } void umrechnen(int number) { int bits = sizeof(int) * 8; // Anzahl der Bits in einem int (z. B. 32 Bits) unsigned int mask = 1 << (bits - 1); // Maske für das höchstwertige Bit // Wenn die Zahl negativ ist, wird sie als Zweierkomplement interpretiert unsigned int value = number; for (int i = 0; i < bits; i++) { // Prüfe das höchstwertige Bit und schiebe die Maske nach rechts if (value & mask) { printf("1"); } else { printf("0"); } mask >>= 1; // Schiebe die Maske um ein Bit nach rechts } }