프로그래밍 언어/파이썬

백준 > 2557, 1000, 1330, 2739, 10952 (단계 1 ~ 4)

B612 2021. 6. 21. 16:29

파이썬을 공부했지만, 써먹을 일이 없다보니 자꾸 까먹어서 기록해놓으려 한다...

<백준: 단계별로 풀어보기>의 단계에서 대표 문제(?) 풀이를 기록할 예정이다..

 

단계 1: 입출력과 사칙연산

# 2557

print('Hello World!')

 

매우 기본적인 출력 문제이다.

 

# 1000

A, B = map(int, input().split())

print(A + B)

한 줄에 여러 개의 변수 입력 받기, print(A + B)와 print("A + B")의 차이점 정도를 알면 될 것 같다.

1. 파이썬의 내장 함수인 map()은 여러 개의 데이터를 한 번에 다른 형태로 변환하는 데 사용된다.

map(함수, 반복 가능한 개체) 형식으로 사용한다.

여기서는 A와 B를 한 번에 int 형식으로 받는 데 사용되었다.

2. print(A + B)는 말 그대로 A와 B를 더한 값을 출력하는 것이다.

반면, print("A + B")는 큰 따옴표 안에 있는 A + B를 문자열로 인식해 A + B가 출력될 것이다.

 

단계 2: if문

# 1330

A, B = map(int, input().split())

if (A > B):
    print('>')
elif (A == B):
    print('==')
else:
    print('<')

평범한 if문이다.

 

단계 3: for문

# 2739

a = int(input())

for i in range(1, 10):
    print (a,'*', i, '=', a * i)

 

range와 리스트 내포를 집고 넘어가면 좋을 것 같다.

1. range 함수는 범위를 표현하기에 편하기 때문에 for과 함께 자주 쓰인다.

예를 들어, range(1, 5)는 1부터 4까지의 범위를 말한다.

range(5)는 0부터 4까지의 범위를 말한다.

2. 리스트 내포를 사용하면 for문과 if문을 한 줄에 작성해 코드 길이를 단축 시킬 수 있다.

리스트 명 = [표현식 for 변수 in 반복 가능한 대상] 형태로 사용한다.

 

단계 4: while문

# 10952

while(True):
    a, b = map(int, input().split())
    if (a==0 and b==0):
        break
    print (a + b)

평범한 while문이다.

True를 사용하여 무한 반복 실행되게 했고, 조건을 만족하면 break로 빠져나가게 작성했다.

 

# 오타, 오류, 질문 모두 환영합니다!