Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

โปรแกรม C # เพื่อแปลงสตริงไบนารีเป็น Integer


ใช้คลาส Convert.ToInt32 เพื่อบรรลุวัตถุประสงค์ในการแปลงสตริงไบนารีเป็นจำนวนเต็ม

สมมติว่าสตริงไบนารีของเราคือ -

string str = "1001";

ตอนนี้แต่ละตัวอักษรจะถูกแยกวิเคราะห์ -

try {
   //Parse each char of the passed string
   val = Int32.Parse(str1[i].ToString());
   if (val == 1)
      result += (int) Math.Pow(2, str1.Length - 1 - i);
   else if (val > 1)
      throw new Exception("Invalid!");
} catch {
   throw new Exception("Invalid!");
}

ตรวจสอบด้านบนสำหรับอักขระแต่ละตัวในสตริงที่ส่งผ่าน เช่น "100" โดยใช้ a for a loop ค้นหาความยาวของสตริงโดยใช้วิธี length() -

str1.Length

ตัวอย่าง

คุณสามารถลองเรียกใช้โค้ดต่อไปนี้เพื่อแปลงสตริงไบนารีเป็นจำนวนเต็มใน C# ได้

using System;
class Program {
   static void Main() {
      string str = "1001";
      Console.WriteLine("Integer:"+ConvertClass.Convert(str));
   }
}
public static class ConvertClass {
   public static int Convert(string str1) {
      if (str1 == "")
         throw new Exception("Invalid input");
      int val = 0, res = 0;
      for (int i = 0; i < str1.Length; i++) {
         try {
            val = Int32.Parse(str1[i].ToString());
            if (val == 1)
               res += (int)Math.Pow(2, str1.Length - 1 - i);
            else if (val > 1)
               throw new Exception("Invalid!");
         } catch {
            throw new Exception("Invalid!");
         }
      }
      return res;
   }
}

ผลลัพธ์

Integer:9