Упражнения на C: преобразование десятичного числа в двоичное
C Рекурсия: Упражнение 11 с решением
Напишите программу на C для преобразования десятичного числа в двоичное с использованием рекурсии.
Иллюстрированная презентация:
Пример решения:
Код C:
#include<stdio.h>
long convertBinary(int);
int main()
{
long biNo;
int decNo;
printf("\n\n Recursion : Convert decimal number to binary :\n");
printf("---------------------------------------------------\n");
printf(" Input any decimal number : ");
scanf("%d",&decNo);
biNo = convertBinary(decNo);//call the function convertBinary
printf(" The Binary value of decimal no. %d is : %ld\n\n",decNo,biNo);
return 0;
}
long convertBinary(int decNo)
{
static long biNo,r,fctor = 1;
if(decNo != 0)
{
r = decNo % 2;
biNo = biNo + r * fctor;
fctor = fctor * 10;
convertBinary(decNo / 2);//calling the function convertBinary itself recursively
}
return biNo;
}
Пример вывода:
Рекурсия: преобразование десятичного числа в двоичное: -------------------------------------------------- - Введите любое десятичное число: 66 Двоичное значение десятичного числа нет. 66 это: 1000010
Блок - схема:
Редактор кода программирования C:
Есть другой способ решить это решение? Внесите свой код (и комментарии) через Disqus.
Предыдущий: Напишите программу на C, чтобы найти Факториал числа, используя рекурсию.
Далее: Напишите программу на C, чтобы проверить, является ли число простым числом или не использует рекурсию.
Новый контент: Composer: менеджер зависимостей для PHP , R программирования
disqus2code