十進法から二進法への転換のための機能:
void Decimal_to_Binary(void)
{
int input =0;
int i;
int count = 0;
int binary [32]; /* 32ビット、最高32要素 */
printf ("Enter Decimal number to convert into
Binary :");
scanf ("%d", &input);
do
{
i = input%2; /* 1か0を得るmod 2*/
binary[count] = i; /* 二進配列への負荷要素 */
input = input/2; /* バイナリによって減少するために2で入力を割ることによって求めなさい */
count++; /* 何要素が必要であるか数えなさい*/
}while (input > 0);
/* 逆および出力二進デジット */
printf ("Binary representation is: ");
do
{
printf ("%d", binary[count - 1]);
count--;
} while (count > 0);
printf ("\n");
}
十進法転換へのバイナリのための機能:
次の機能は対応する10進数に2進数を変えることである:
void Binary_to_Decimal(void)
{
char binaryhold[512];
char *binary;
int i=0;
int dec = 0;
int z;
printf ("Please enter the Binary Digits.\n");
printf ("Binary digits are either 0 or 1 Only ");
printf ("Binary Entry : ");
binary = gets(binaryhold);
i=strlen(binary);
for (z=0; z<i; ++z)
{
dec=dec*2+(binary[z]=='1'? 1:0); /* if Binary[z] is
equal to 1,
then 1 else 0 */
}
printf ("\n");
printf ("Decimal value of %s is %d",
binary, dec);
printf ("\n");
}
|