a_shot_chu   1년 전

a = int(input()

b= int(input()

print(a*(b%10))

print(a*(b%100//10))

print(a*(b//100))

print(a*b)

이렇게 코딩하면 정답처리가 되는데

밑처럼 코딩하면 안먹혀요 이유가 뭔가요? spyder 코딩에서는 됐어요

hhs2003   1년 전

map (int , input().split()) 은  라인로 입력을 받는 함수 input에 의해 

한줄만 입력 받고 입력받아서 들어온 input() 라인의 문자열을 " "를 기준으로 split() 나누는 겁니다. 

즉, 나눈 개별 요소를 map() 함수에서 int형으로 변환 시키고 a,b에 저장하는 거죠.

한 줄 입력을 받고 공백을 기준으로 나누면 하나의 숫자밖에 얻지 못합니다. a,b에 두개를 저장해야 하는데 한 개 밖에 없어서 오류가 발생 하는것이죠.

hhs2003   1년 전

별개로 위의 코딩은 input()을 두 번 해서, 처음 라인을 입력으로 받고, 한번더 input()함수를 호출해서, 다음 한개의 라인을 입력으로 받아서 숫자 2개의 입력을 받을 수 있는 것 입니다.

a_shot_chu   1년 전

spyder 라는 코딩하는 앱에서는 실행된 이유는 뭔가요? 그리고 이전에 코딩도 map함수를 써서 풀었을떄 먹혔는데 이것만 안되는 이유가 있을까요?

djm03178   1년 전

그건 테스트하실 때 그에 맞게 입력을 주셨으니까 된 거고, 문제에서 요구한 대로 입력을 넣으면 spyder에서도 안 됩니다.

댓글을 작성하려면 로그인해야 합니다.