안녕하세요
프로그래머 여러분
취미로 파이선을 공부하고자 책 펴 놓고 독수리 타법으로 베껴 쳐보고 있는 초보입니다.
하다가 궁금한 게 생겼는 데 너무 기초적인 질문 같아서 어디 물어 볼 데도 없고, 검색해도 딱 알고 싶어 하는 내용이 나오질 않아서
이렇게 질문 드립니다. 혹시나 시간 되시면 간단히 좀 알려주시면 고맙겠습니다. ^.^
함수를 정의하여 쓸 수 있다는 것을 배웠는 데요.
def compare(a,b):
if a > b:
print ('a > b')
elif a < b:
print ('a < b')
else:
print ('a = b')
이렇게 해서 >>>compare(10,20)이런 식으로 치면 결과가 나오는 건데,
하다가 보니 input을 써서 숫자를 입력 받아 결과가 나오게 하면 좀 멋있을 것 같아서 앞의 내용을 참고해서
def com(a, b):
if a > b:
print('첫번째 숫자가 두번째 숫자보다 큽니다.')
elif a == b:
print('첫번째 숫자는 두번째 숫자와 같습니다.')
else:
print('첫번째 숫자는 두번째 숫자보다 작습니다.')
a = input('첫번째 숫자입력 : ')
b = input('두번째 숫자입력 : ')
com(a, b)
이렇게 만들어 보았습니다. 그런데 실제로 실행을 해보니 입력 받은 숫자의 가장 앞자리만 비교해서 결과가 나오더라구요.
ex) 5랑 20을 입력하면 5가 더 크다고 나옵니다.
그래서 고민하다가 여기 저기서 주워 듣고 본 걸로
def com(a, b):
if a > b:
print('첫번째 숫자가 두번째 숫자보다 큽니다.')
elif a == b:
print('첫번째 숫자는 두번째 숫자와 같습니다.')
else:
print('첫번째 숫자는 두번째 숫자보다 작습니다.')
a = int(input('첫번째 숫자입력 : '))
b = int(input('두번째 숫자입력 : '))
com(a, b)
이렇게 하고 나니 제대로 숫자 비교를 하는 것 같더라구요.
결론 적으로 int가 뭐하는 것이며, 왜 int 없이 첫번째 대로 작성하면 결과가 이상한 건지 알고 싶습니다.
그럼 미리 감사 드립니다. (-.-) (_._);