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

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

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

Помогите пожалуйста сделать обратную функции перевода, из двоичной в десятичную, добавив в часть кода. Очень надо
Листинг программы
  1. #include <stdio.h>
  2. int d2b(int n)
  3. {
  4. int r;
  5. if (n == 0)
  6. return 0;
  7. else
  8. {
  9. r=d2b(n / 2);
  10. return r*10+(n % 2);
  11. }
  12. }
  13.  
  14. int main(int argc, char* argv[])
  15. {
  16. int n;
  17. printf("n_d=");
  18. scanf("%d",&n);
  19. printf("n_b=%d \n",d2b(n));
  20. return 0;
  21. }

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

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4. typedef char bin_t[33];
  5. #define get_bin(s) ( scanf("%32s", (s)) == 1 && strlen(s) == strspn((s), "01") )
  6.  
  7. unsigned bin2num(const char * bin) {
  8.     unsigned ret = 0;
  9.    
  10.     for ( ; *bin; ++bin )
  11.         ret = (ret << 1) | (*bin - '0');
  12.    
  13.     return ret;
  14. }
  15.  
  16.  
  17.  
  18. int main(void) {
  19.     bin_t bin;
  20.    
  21.     while ( printf("Binary: ") && get_bin(bin) )
  22.         printf("Decimal: %u\n", bin2num(bin));
  23.    
  24.     return 0;
  25. }

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


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

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

8   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы