[Homework] Loops - Problem {13} - Binary to Decimal Number

[Homework] Loops - Problem {13} - Binary to Decimal Number

antonp1p2 avatar antonp1p2 17 Точки

[Homework] Loops - Problem {13} - Binary to Decimal Number

Здравейте, някой би ли могъл да ми обясни малко по-подробно решението на задачата.

Условие:

Using loops write a program that converts a binary integer number to its decimal form. The input is entered as string. The output should be a variable of type long. Do not use the built-in .NET functionality. Examples:

Решение:

http://pastebin.com/LsVE8JDM

 

Гледах, суках, въртях обаче нещо не намирам смисъла... защо например променливата "num" е равна на "binNumber[i] - 48" ?

KatyaMarincheva avatar KatyaMarincheva 572 Точки

Здравей Антоне,

Колегата е прав - ако предпочиташ можеш да използваш и int.Parse() за превръщане на char в цифра:

например така http://pastebin.com/p1X08PzT

Иначе този пример който ти коментираш може да се инаправи и с (number[i] - '0'

                // example: '9' = 57 (ASCII code); '0' = 48; hence '9' - '0' = 9,
                // which is exactly the decimal value of the digit 9

1