Перевод из двоичной в десятиричную - C#

Узнай цену своей работы

Формулировка задачи:

Помогите с кодом. Только чтобы не использовались методы типа Convert и так далее. Всё на уровне паскаля. Допустим делением по модулю на 10 и запись остатка в массив. Этим способом. Вот нарыл код на паскале, я так понимаю отражает то, что мне нужно
Листинг программы
  1. function step(x:integer):longint;
  2. var i:integer;
  3. st:longint;
  4. begin if x=0 then step:=1 else begin st:=1;
  5. for i:=1 to x do begin st:=st*2; step:=st;
  6. end; end; end; var k,a,b,d,s:longint;
  7.  
  8. begin s:=0; k:=0;
  9. readln(a);
  10. repeat b:=a mod 10; // отделяем последнюю цифру числа
  11. d:=a div 10; // запоминаем число без последней цифры
  12. s:=s+b*step(k);
  13. k:=k+1;
  14. a:=d;
  15. until d=0;
  16. writeln(s);
  17. end.
Ах да... и без класса .Math

Решение задачи: «Перевод из двоичной в десятиричную»

textual
Листинг программы
  1. string s = "1101";
  2. int n = 0;
  3. foreach(char c in s) n = n << 1 | c - '0';
  4.  
  5. Console.WriteLine("{0}(2) = {1}(10)", s, n);
  6. Console.ReadLine();

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.9 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы