def min_operations(number):
    """
    Return number of steps taken to reach a target number
    number: target number (as an integer)
    :returns: number of steps (as an integer)
    """

    # Solution:
    # 1. The number of steps to reach a target number = number of steps take to make the target number 0
    # 2. We will be greedy, each time if it is possible we will try to make the number half
    steps_count = 0
    while number > 0:
        # check if we can make the number half
        if number % 2 == 0:
            number = number / 2
        else:
            # number can't halved so we can only decrease it by 1
            number -= 1
        steps_count += 1

    return steps_count