if
조건이 참일 때 실행할 문장들을 정의한다.
if 조건:
참일 경우 실행할 문장 1
참일 경우 실행할 문장 2
참일 경우 실행할 문장 3
복잡한 조건으로 if문을 만들 수 있다.
if 조건1:
조건1이 참일 경우 실행할 문장 1
조건1이 참일 경우 실행할 문장 2
조건1이 참일 경우 실행할 문장 3
elif 조건2:
조건2가 참일 경우 실행할 문장 1
조건2가 참일 경우 실행할 문장 2
조건2가 참일 경우 실행할 문장 3
elif 조건3:
elif 조건4:
...(원하는 만큼 생성 가능)
else:
위의 조건들을 모두 만족하지 않을 경우 실행할 문장 1
위의 조건들을 모두 만족하지 않을 경우 실행할 문장 2
위의 조건들을 모두 만족하지 않을 경우 실행할 문장 3
elif와 else는 모두 생략 가능하다.
조건과 실행할 문장은 들여쓰기로 구분한다.
백준 2753번 문제
https://www.acmicpc.net/problem/2753
입력받은 년도의 윤년 여부를 확인해야 한다.
윤년의 조건을 보고 4의 배수인지, 100의 배수인지, 400의 배수인지 확인해야 한다.
1
2
3
4
5
6
7
8
9
10
|
year = int(input())
if year % 4 == 0:
if year % 100 != 0:
print('1')
elif year % 400 == 0:
print('1')
else:
print('0')
else:
print('0')
|
cs |
위의 순서에 맞게 if문을 만들어보았다.
python의 if문에서 참은
숫자형: 0은 거짓 / 나머지는 참
문자열: 빈 문자열만 거짓 / 나머지는 참
컬렉션: (), [], {}만 거짓
None: 거짓(변수에 들어있는 값이나 함수의 결과가 None인 경우 있음)
Boolean: True는 참 / False는 거짓
삼항연산자
참인경우값 if 조건문 else 거짓인경우값
한 가지 조건만 따져서 true/false일 경우에 따라 단순한 문장을 실행한다면 삼항연산자가 더 간단하고 편하다.
14681번 문제 https://www.acmicpc.net/problem/14681
내가 작성한 코드
1
2
3
4
5
6
|
x = int(input())
y = int(input())
if x > 0:
print('1') if y > 0 else print('4')
else:
print('2') if y > 0 else print('3')
|
cs |
x와 y를 입력받아서 우선 x가 양수인지, 음수인지 확인한 후 y > 0을 확인하는 삼항연산자를 사용해 코드를 작성했다.
'알고리즘' 카테고리의 다른 글
백준 - 함수 (0) | 2021.07.27 |
---|---|
백준 - 1차원 배열 (0) | 2021.07.26 |
백준 - while문 (0) | 2021.07.20 |
백준 - for문 (0) | 2021.07.20 |
백준 - 입출력과 사칙연산 (0) | 2021.07.15 |