diff --git a/lib/binary_to_decimal.rb b/lib/binary_to_decimal.rb index 439e8c6..ba6ad8a 100644 --- a/lib/binary_to_decimal.rb +++ b/lib/binary_to_decimal.rb @@ -4,6 +4,24 @@ # The least significant bit is at index 7. # Calculate and return the decimal value for this binary number using # the algorithm you devised in class. + def binary_to_decimal(binary_array) - raise NotImplementedError + + length = binary_array.length + counter = 0 + decimal_array = [] + length.times do + decimal_array << 2 ** counter + counter += 1 + end + + decimal_number = 0 + index = -1 + binary_array.each do |element| + decimal_number += element*decimal_array[index] + index -=1 + end + + return decimal_number + end