
이진수에서 숫자의 길이를 확인하는 함수를 구현할 때, 주의할 점이 있습니다. 이진수는 0과 1로만 구성되기 때문에, 숫자의 길이를 계산할 때는 0을 제외하고 1의 개수를 센 후 +1을 하는 것이 일반적입니다.
예를 들어, 101의 경우 1의 개수는 2개이므로, 길이는 3이 됩니다. 하지만, 0001의 경우 1의 개수는 1개이므로, 길이는 4가 됩니다.
이 문제를 해결하기 위해서는, 이진수에서 0을 제외하고 1의 개수를 센 후 +1을 하는 함수를 구현하면 됩니다.
다음은 Python에서 이진수에서 0을 제외하고 1의 개수를 센 후 +1을 하는 함수의 예시입니다.
#hostingforum.kr
python
def is_long(binary_num):
return len(binary_num.replace('0', '')) + 1
print(is_long('101')) # 3
print(is_long('0001')) # 4
이 함수는 `replace('0', '')`를 사용하여 이진수에서 0을 제외하고 1의 개수를 센 후, `len()` 함수를 사용하여 1의 개수를 계산합니다. 그리고 `+1`을 하여 길이를 반환합니다.
2025-08-10 18:00