/
FlowerTower
/
System_Programming_in_Linux
Обзор
Документация
Войти
/
FlowerTower
/
System_Programming_in_Linux
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
bit_operations/task2.c
40 строк
1 KB
FlowerTower
create bit_operations/task2.c
02 ноя 2024, 20:19
02 ноя 2024, 20:19
c18ad54
Код
Авторство
О чём код?
#include <stdio.h> void print_binary(int number) { // Переменная для хранения количества битов int bits = sizeof(number) * 8; // Количество битов в типе int if (number < 0) { number = ~number + 1; } // Проходим по каждому биту, начиная с самого старшего for (int i = bits - 1; i >= 0; i--) { if (number & (1 << i)) { printf("1"); // Если бит равен 1, выводим 1 } else { printf("0"); // Если бит равен 0, выводим 0 } } printf("\n"); } int main() { int number; // Ввод числа с клавиатуры printf("Введите целое отрицательное число: "); scanf("%d", &number); // Проверяем, является ли число отрицательным if (number >= 0) { printf("Ошибка: введите отрицательное число.\n"); return 1; // Выход с ошибкой } // Вывод двоичного представления printf("Двоичное представление числа %d: ", number); print_binary(number); return 0; }