перевод из одной системы счисления в другую

В языке C# значение переменной можно записать либо в десятичной системе счисления, либо шестнадцатеричной.
Двоичная, восьмеричная и другие системы нужно записывать в переменную типа string.
Скрыть

Показать

Копировать
 Main.cs 
  • using System;
  • class Program {
  •  public static int Main() {
  •    
  •   string Bin = "1111";
  •   string Oct = "17";
  •   long Dec = 15;
  •   long Hex = 0xf;
  •   long temp;
  •  
  •   /*---Конвертируем в двоичную систему счисления---*/
  •   Console.WriteLine("Конвертируем в двоичную систему счисления\n");
  •   Console.WriteLine("{0} : двоичная : {1}", Bin, Bin);
  •   /*из восьмеричной в двоичную ВНИМАНИЕ! вначале переводим
  •   в десятичную по основанию 8, а затем в двоичную*/
  •   temp = Convert.ToInt64(Oct, 8);
  •   Console.WriteLine("{0} : восьмеричная : {1}", Oct, Convert.ToString(temp, 2));
  •   Console.WriteLine("{0} : десятичная : {1}", Dec, Convert.ToString(Dec, 2));
  •   Console.WriteLine("{0:x} : шестнадцатеричная : {1}", Hex, Convert.ToString(Hex, 2));
  •  
  •   /*---Конвертируем в восьмеричную систему счисления---*/
  •   Console.WriteLine("\nКонвертируем в восьмеричную систему счисления\n");
  •   /*из двоичной в восьмеричную ВНИМАНИЕ! вначале переводим
  •   в десятичную по основанию 2, а затем в восьмеричную*/
  •   temp = Convert.ToInt64(Bin, 2);
  •   Console.WriteLine("{0} : двоичная : {1}", Bin, Convert.ToString(temp, 8));
  •   Console.WriteLine("{0} : восьмеричная : {1}", Oct, Oct);
  •   Console.WriteLine("{0} : десятичная : {1}", Dec, Convert.ToString(Dec, 8));
  •   /*из двоичной в восьмеричную ВНИМАНИЕ! вначале переводим
  •   в десятичную по основанию 2, а затем в восьмеричную*/
  •   temp = Convert.ToInt64(Bin, 2);
  •   Console.WriteLine("{0:x} : шестнадцатеричная : {1}", Hex, Convert.ToString(temp, 8));
  •  
  •   /*---Конвертируем в десятичную систему счисления---*/
  •   Console.WriteLine("\nКонвертируем в десятичную систему счисления\n");
  •   Console.WriteLine("{0} : двоичная : {1}", Bin, Convert.ToInt64(Bin, 2));
  •   Console.WriteLine("{0} : восьмеричная : {1}", Oct, Convert.ToInt64(Oct, 8));
  •   Console.WriteLine("{0} : десятичная : {1}", Dec, Dec);
  •   Console.WriteLine("{0:x} : шестнадцатеричная : {1}", Hex, Hex);
  •  
  •   /*---Конвертируем в шестнадцатеричную систему счисления---*/
  •   Console.WriteLine("\nКонвертируем в шестнадцатеричную систему счисления\n");
  •   /*из двоичной в шестнадцатеричную ВНИМАНИЕ! вначале переводим
  •   в десятичную по основанию 2, а затем в восьмеричную*/
  •   temp = Convert.ToInt64(Bin, 2);
  •   Console.WriteLine("{0} : двоичная : {1}", Bin, Convert.ToString(temp, 16));
  •   /*из восьмеричной в шестнадцатеричную ВНИМАНИЕ! вначале переводим
  •   в десятичную по основанию 2, а затем в восьмеричную*/
  •   temp = Convert.ToInt64(Bin, 2);
  •   Console.WriteLine("{0} : восьмеричная : {1}", Oct, Convert.ToString(temp, 16));
  •   Console.WriteLine("{0} : десятичная : {1}", Dec, Convert.ToString(Dec, 16));
  •   Console.WriteLine("{0:x} : шестнадцатеричная : {1:x}", Hex, Hex);
  •  
  •   Console.ReadKey();
  •   return 0;
  •  }
  • }
Конвертируем в двоичную систему счисления

1111 : двоичная : 1111
17 : восьмеричная : 1111
15 : десятичная : 1111
f : шестнадцатеричная : 1111

Конвертируем в восьмеричную систему счисления

1111 : двоичная : 17
17 : восьмеричная : 17
15 : десятичная : 17
f : шестнадцатеричная : 17

Конвертируем в десятичную систему счисления

1111 : двоичная : 15
17 : восьмеричная : 15
15 : десятичная : 15
f : шестнадцатеричная : 15

Конвертируем в шестнадцатеричную систему счисления

1111 : двоичная : f
17 : восьмеричная : f
15 : десятичная : f
f : шестнадцатеричная : f