Added binary_to_decimal.rb

This commit is contained in:
Abhinav Anand 2021-02-03 22:58:43 +05:30 committed by GitHub
parent ca83061afe
commit 649f6032c3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -0,0 +1,26 @@
=begin
For any binary number of n digits i.e dn-1 ... d3 d2 d1 d0
The equivalent decimal number is equal to the sum of binary digits (dn) times their power of 2 (2n):
decimal = d0×2^0 + d1×2^1 + d2×2^2 + ...
=end
def binary_to_decimal(n)
decimal = 0
base = 1
until n.zero?
x = n % 10
n /= 10
decimal += x * base
base *= 2
end
return decimal
end
puts "Decimal value of 110011 is " + binary_to_decimal(110011).to_s
# Decimal value of 110011 is 51
puts "Decimal value of 11110 is " + binary_to_decimal(11110).to_s
# Decimal value of 11110 is 30
puts "Decimal value of 101 is " + binary_to_decimal(101).to_s
# Decimal value of 101 is 5