본문 바로가기
파이썬/BOJ_입출력과 사칙연산

[백준 1000 파이썬] A+B

by 쉽게사는방법 2022. 12. 18.
반응형

[백준 1000 파이썬] A+B

 

안녕하세요.

Hello World에 이어 가장 기본적인 사칙연산 차례입니다. 가장 먼저 덧셈 (A+B) 차례군요!

 

두 수를 입력받고 합을 출력하는 문제
백준 1000

 

문제 분석 및 답안

너무 쉽나요?

하지만 예상 외로 매우 중요한 스킬이 필요한데... 바로 변수 2개를 한번에 입력하는 방법입니다!

 

변수 입력하기

A,B=input().split()
print(A+B)

 

변수 두개를 넣고, split 함수로 구분을 지어주면 딱!

문자열 합
문자열 +

?? 2와 5를 literally 더해버렸네요! 바로 A, B 두 변수를 '문자열'로 인식했기 때문입니다.

정수 합
정수 +

(A의 자료형, class 'str'은 문자열을 뜻합니다.)

 

그렇다고 입력값을 int로 묶어주면 아래와 같이 에러가 발생합니다. 두 값을 받았으니 리스트로 인식하여 정수형으로 변환할 수 없다는 것 같군요.

입력 오류 사례

결국 A, B 각각 정수형으로 변환을 시켜주어야 사칙연산 계산이 가능하죠!

자료형 지정
자료형 지정

하지만 이러면 뭔가 코드가 길어지고... 왠지 손이 아플거 같죠? (???: 이러려고 코딩을 배우나, 자괴감 들어...)

 

map 함수 사용 방법

그래서 여러 변수에 원하는 함수를 적용시켜주는 map 함수를 사용하게 됩니다!

map 함수
map 함수

map(X, Y) 형식으로 첫번째 인자 (X)를 두번째 인자 (Y)에 적용해 주는 형식인데, Y 값이 여러개일 때 아주 유용합니다.

문제에서 int 함수 (X)를 A, B 두개의 변수(Y)에 각각 적용해 주었죠.

앞으로도 많이 사용하게 될 함수이니 잘 기억하고 연습해 두시면 좋을 것 같습니다.

 

참고 및 주의사항

사칙연산인데 정작 덧셈(+)에 대한 이야기는 거의 없었네요.

'+' 기호는 위에서 살펴보았듯이 문자열 사이에 놓이면 그냥 이어붙여 버립니다. ('2'+'5'='25')

반면, 수치형 자료형 (int, float)에서는 덧셈 연산을 하죠. (2+5=7)

 

주의하실 점은, 문자열과 수치형을 더할 수는 없다는 점 입니다!

문자열 + 수치형 테스트
문자열 + 수치형 테스트

숫자도 문자열로 입력된 경우만 '+'로 다른 문자열과 결합이 가능하죠!

 

이만 마치겠습니다.

읽어주셔서 감사합니다.

반응형

'파이썬 > BOJ_입출력과 사칙연산' 카테고리의 다른 글

[백준 10869 파이썬] 사칙연산  (0) 2022.12.20
[백준 1008 파이썬] A/B  (0) 2022.12.20
[백준 10998 파이썬] AxB  (0) 2022.12.19
[백준 1001 파이썬] A-B  (0) 2022.12.19
[백준 2557 파이썬] Hello World  (0) 2022.12.18

댓글