Перевод из десятичной системы исчесления в двоичную - C (СИ)

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

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

Помогите разобраться в чем ошибка. Вот попробывал сделать что то типо для перевода из десятиричной системы исчесления, в двоичную вот код
#include <stdio.h>
#include <conip.h>
main()
{  
 int b=2,c,i;
 printf("vvedite 4islo");
 scanf ("&d",&i);
 while (i>0)
 {      i=i/b;
        c=i%b;
 
 printf("%3d",c);
}
getch();
}
Но ругаеться почему то на функцию "getch();" ошибка-" ' getch' undeclared (first use this function)-почему ругаеться, подскажите, и еще правилньо ли я использовал операцию взятие остатка и записывая его в отдельную переменную, просто так и не нашел нормального описания про этот операнда

Решение задачи: «Перевод из десятичной системы исчесления в двоичную»

textual
Листинг программы
#include <stdio.h>
#include <limits.h>
 
/* размер переменной типа int в битах */
#define INT_BIT ( CHAR_BIT * sizeof(int) )
 
int main(void) {
    unsigned n;
    
    while ( printf("Number: ") && scanf("%u", &n) == 1 ) {
        /* буфер для хранения цифр в виде символов + 1 символ для терминального нуля */
        char buf[INT_BIT + 1] = { 0 };
        int i;
        
        for ( i = INT_BIT - 1; i >= 0; --i ) {
            buf[i] = n % 2 + '0';
            n /= 2;
        }
        
        printf("Binary form: %s\n", buf);
    }
    
    return 0;
}

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

  1. Программа переводит десятичное число в двоичную систему счисления.
  2. В начале программы подключаются две заголовочные библиотеки: stdio.h и limits.h.
  3. Далее, с помощью макроса INT_BIT, определяется размер переменной типа int в битах.
  4. Затем, в функции main(), объявляется переменная типа unsigned int с именем n для хранения числа, введенного пользователем.
  5. Далее, в цикле while, программа запрашивает у пользователя ввод числа и сохраняет его в переменной n.
  6. Внутри цикла, создается буфер buf для хранения цифр числа в виде символов, включая терминальный ноль.
  7. Затем, в цикле for, происходит перевод числа в двоичную систему счисления.
  8. В каждой итерации цикла, остаток от деления числа на 2 сохраняется в буфере buf как символ от '0' до '9', а число делится на 2.
  9. После окончания цикла, в буфере buf хранится двоичное представление числа.
  10. Наконец, с помощью функции printf(), на экран выводится двоичное представление числа.
  11. В конце программы, возвращается 0, что означает успешный конец работы программы.

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


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

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

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