Перевод из двоичного в десятичное - C#
Формулировка задачи:
Как исправить ошибку?
static public string ConvertToOcta(string input_bin) { while (input_bin.Length % 3 != 0) { input_bin = "0" + input_bin; } int one_octa_num; string result = ""; for(int i = input_bin.Length;i>0; i-=3) { int rank2 = input_bin[i - 2] == 1 ? 4 : 0; int rank1 = input_bin[i - 1] == 1 ? 2 : 0; int rank0 = input_bin[i] == 1 ? 1 : 0; one_octa_num = rank0 + rank1 + rank2; result += one_octa_num; } return result; }
Решение задачи: «Перевод из двоичного в десятичное»
textual
Листинг программы
using System; class Program { static string BinToOct(string bin) { string oct = ""; int tri = 0; for (int i = bin.Length-1, j = 0; i >= 0; i--, j++) { tri += bin[i] == '1' ? (int)Math.Pow(2, j) : 0; if (j==2 || i == 0) { oct = tri+oct; j = -1; tri = 0; } } return oct; } static void Main() { Console.WriteLine(BinToOct(Console.ReadLine())); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д