Сложение положительного и отрицательного числа в двоичной системе исчисления
Язык программирования c# Заданы положительное и отрицательное число в двоичной сс (последовательность нулей и единиц). Составить программу вычисления суммы двух чисел.
public class HelloWorld
{
public static void Main(string[] args)
{
string str1 = Console.ReadLine();
string str2 = Console.ReadLine();
Console.WriteLine(dec_to_bin(bin_to_dec(str1)+bin_to_dec(str2)));
Console.ReadKey();
}
static Int32 bin_to_dec(string a)
{
double b = 0;
for (double i = a.Length - 1; i >= 0; i--)
b += Convert.ToDouble(a.Substring(Convert.ToInt16(i), 1)) * Math.Pow(2, i);
return Convert.ToInt32(b);
}
static string dec_to_bin(Int32 a)
{
string b = "";
while (a != 0)
{
b = (Convert.ToInt16(a % 2)).ToString() + b;
a /= 2;
}
return b;
}
}
Я написала этот код, но раньше никогда не сталкивалась с отрицательными числами в двоичной сс, я хочу понять правильно ли написан мой код и если есть ошибки помогите пожалуйста исправить их.
Источник: Stack Overflow на русском