如何在 C# 中不使用任何方法查詢兩個二進位制數的和?


首先,宣告並初始化兩個變數與二進位制數。

val1 = 11010;
val2 = 10100;

Console.WriteLine("Binary one: " + val1);
Console.WriteLine("Binary two: " + val2);

要獲取和,迴圈直到兩個值都為 0。

while (val1 != 0 || val2 != 0) {
   sum[i++] = (val1 % 10 + val2 % 10 + rem) % 2;
   rem = (val1 % 10 + val2 % 10 + rem) / 2;
   val1 = val1 / 10;
   val2 = val2 / 10;
}

現在,我們來看一下完整的程式碼,以找到兩個二進位制數的和。

示例

 現場演示

using System;
class Demo {
   public static void Main(string[] args) {
      long val1, val2;
      long i = 0, rem = 0;
      long[] sum = new long[30];
   
      val1 = 11010;
      val2 = 10100;

      Console.WriteLine("Binary one: " + val1);
      Console.WriteLine("Binary two: " + val2);

      while (val1 != 0 || val2 != 0) {
         sum[i++] = (val1 % 10 + val2 % 10 + rem) % 2;
         rem = (val1 % 10 + val2 % 10 + rem) / 2;
         val1 = val1 / 10;
         val2 = val2 / 10;
      }

      if (rem != 0)
      sum[i++] = rem;
      i = i - 1;
      Console.Write("Sum = ");

      while (i >= 0)
      Console.Write(sum[i--]);
   }
}

輸出

Binary one: 11010
Binary two: 10100
Sum = 101110

已更新:2020-06-22

199 瀏覽

開啟 職業生涯

完成本課程以獲取認證

立即開始
廣告
© . All rights reserved.