Перевод из двоичной системы в десятичную - C (СИ) (149519)
Формулировка задачи:
Помогите пожалуйста сделать обратную функции перевода, из двоичной в десятичную, добавив в часть кода. Очень надо
#include <stdio.h> int d2b(int n) { int r; if (n == 0) return 0; else { r=d2b(n / 2); return r*10+(n % 2); } } int main(int argc, char* argv[]) { int n; printf("n_d="); scanf("%d",&n); printf("n_b=%d \n",d2b(n)); return 0; }
Решение задачи: «Перевод из двоичной системы в десятичную»
textual
Листинг программы
#include <stdio.h> #include <string.h> typedef char bin_t[33]; #define get_bin(s) ( scanf("%32s", (s)) == 1 && strlen(s) == strspn((s), "01") ) unsigned bin2num(const char * bin) { unsigned ret = 0; for ( ; *bin; ++bin ) ret = (ret << 1) | (*bin - '0'); return ret; } int main(void) { bin_t bin; while ( printf("Binary: ") && get_bin(bin) ) printf("Decimal: %u\n", bin2num(bin)); return 0; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д