0

バイナリの足し算、引き算、掛け算、割り算のプログラムを書くのに問題があります。私が抱えている主な問題は、プログラムを制限して 1 と 0 (バイナリ部分) を出力できるようにすることです。以下は、調査中にオンラインで見つけたプログラムですが、自分で実装する方法や、小数を含むバイナリを計算する方法をまだ完全には理解していません。これらの計算を行うために取っておいたビットに応じて最大出力が制限されるため、配列を使用したくありません。

潜在的なアイデアを楽しみにしています。

#include<stdio.h>

int main(){

    long int binary1,binary2;
    int i=0,remainder = 0,sum[20];

    printf("Enter any first binary number: ");
    scanf("%ld",&binary1);
    printf("Enter any second binary number: ");
    scanf("%ld",&binary2);

    while(binary1!=0||binary2!=0){
         sum[i++] =  (binary1 %10 + binary2 %10 + remainder ) % 2;
         remainder = (binary1 %10 + binary2 %10 + remainder ) / 2;
         binary1 = binary1/10;
         binary2 = binary2/10;
    }

    if(remainder!=0)
         sum[i++] = remainder;

    --i;
    printf("Sum of two binary numbers: ");
    while(i>=0)
         printf("%d",sum[i--]);

   return 0;
}
4

1 に答える 1