Формирование символьной строки, что соответствует двоичному коду - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Всем добрый день, прошу помочы с программой: Условие: Разработать функцию, которая формирует символьную строку, что соответствует двоичному коду заданного ДЛИННОГО целого беззнакового числа Вот что у меня получилось:
#include <stdio.h>
 
main()
{
    long long int i, p;
    char temp;
    
    system("cls");
 
    printf("vvedite p:(p < 32256) \n");
    scanf("%d",&p);
    
    for(i = p; i <= p; i++)
    {
        p = i;
        
        printf("%d\t", i);
    while(p > 0)
    {
        printf("%d ", p % 2);
        p /= 2;
    }
    printf("\n");   
    
    temp = p;
    
    printf("%c",temp);
}
getch();
}
Заранее спасибо)
можно просто программой, функцию делать необязательно)

Решение задачи: «Формирование символьной строки, что соответствует двоичному коду»

textual
Листинг программы
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
 
main()
{
    unsigned long long int p=0, i;
    unsigned int u;
    system("cls");
 
    printf("vvedite p:\n");// здесь 2^64-1 максимально
    scanf("%llu",&p);
    printf("%llu\n", p);
    for(i = 0x8000000000000000, u=1; i; u++, i>>=1) {
        if  (p&i) putchar('1');
        else    putchar('0');
        if (!(u%8)) putchar(' ');
    }
    getch();
}

Объяснение кода листинга программы

  1. Подключение необходимых библиотек: iostream.h, conio.h, stdlib.h
  2. Объявление переменных: p (unsigned long long int), i (unsigned int), u (unsigned int).
  3. Очистка экрана с помощью функции system(cls).
  4. Запрос на ввод числа p с помощью функции scanf(%llu,&p).
  5. Вывод числа p с помощью функции printf(%llu\n, p).
  6. Инициализация цикла for с условием от 0x8000000000000000 до 0x0000000000000001.
  7. Внутри цикла проверяется, является ли p равным i, и если да, то выводится '1', иначе '0'.
  8. Если значение u делится на 8 без остатка, то выводится пробел.
  9. После окончания цикла программа ожидает нажатия клавиши с помощью функции getch().

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.2 из 5
Похожие ответы