2진수를 10진수로 변환 시키는 코드를 만들고 있는데, 문제가 생겼습니다.
2진수를 입력하면 10진수로 변환이 되긴 하는데 2진수가 아닌 수를 입력해도 변환됩니다.
어떻게 코드를 짜야 할지 모르겠습니다... 살려주세요
num=str(input('하나의 이진수를 입력하세요: '))
d=0
p=1
i=(len(num))-1
for i in range(i+1):
d=int(num[i])*p+d
p=p*2
i=i-1
str1= '이진수 %s을 십진법으로 표현한 값 = %d' %(num,d)
print(str1)
현재 여기까지는 했는데, 2진수가 아닌수를 구분하는 코드를 못짜겠어요
|
답변 1개
채택된 답변
+20 포인트
2021-05-12 (수) 12:22:35
0, 1 아니면 패스 하도록 짜면 되겠네요
답변을 작성하려면 로그인이 필요합니다.