IFP 겨울방학 스터디(Unit 13)

유재우·2022년 1월 10일
0

IFP-겨울방학 스터디

목록 보기
11/38

if 조건문으로 특정 조건일 때 코드 실행하기

  • 사용법은 다른 언어와 같다
  • if문의 구조
if 조건식:
    코드
  • 주의할 점
  1. 조건식에서 값을 비교할 때 =이 아닌 ==으로 사용한다.
  2. 조건식 끝에 :을 꼭 작성한다.
  3. if문 다음 줄에 들여쓰기를 하지 않으면 에러가 난다.
  • 코드를 생략하기
    if 다음 줄에 pass를 넣어 아무일 앖이 넘어가게 한다.
    쓰는 이유 - if문 다음에 아무 코드없이는 작동하지 않아 pass를 넣어 작동시키게 하고 나중에 작성할 코드를 남겨놓는 것이다.
if a == 1:
    pass # TODO: a가 1일 때 처리가 필요함
  • TODO
    주석에 TODO를 넣으면 검색으로 쉽게 찾을 수 있어서 자주 사용한다.

중첩 if문

  • if문 안에 다른 조건의 if문을 들여쓰기로 작성하면 if문이 중첩이 된다.
if a >= 5:
    print('5보다 크다')         
    if a >= 10:
        print('10보다 크다')
  • a가 15일 때

    5보다 크다
    10보다 크다

  • a가 9일 때

    5보다 크다

사용자가 입력한 값에 if조건문 사용하기

  • input()을 사용해서 사용자가 입력한 값을 변수에 저장하고, if 조건문으로 값을 비교한다.
a = int(input())
if a == 10:
    print('10이다')
if a == 20:
    print('20이다')

입력) 10
10이다


13.5 퀴즈

  • 다음 중 if 조건문의 사용 방법으로 올바른 것을 고르세요
1. if (x == 10)
       print('10입니다.')
2. if x == 10
       print('10입니다.')
3. if x == 10:
       print('10입니다.')
4. if x == 10:
   print('10입니다')
5. if x = 10:
       print('10입니다')
 정답) 3
 풀이) 비교연산자 ==과 들여쓰기와 :가 생략이 안된 건 3번 밖에 없다.
  • 다음은 코드에서 잘못된 부분을 모두 고르세요.
a. x = -20
b.
c. if x < 0
d.     print('0미만입니다.')
e.
f.     if x == -10:
g.         print('-10입니다.')
h.
i.     if x == -20:
j.     print('-20입니다.')
정답) c, j
풀이) 
c - 조건식 뒤에 :가 생략되었음
j - 들여쓰기를 하지 않았음
  • 다음 중 잘못된 if 조건문을 고르세요(a와 b는 변수).
1. if a = b:
2. if a > b:
3. if a is b:
4. if not a:
5. if a != 10:
정답) 1
풀이) if문에서는 =을 사용 할 수 없고 ==을 사용해야 한다.

13.6연습문제: if조건문 사용하기

  • 다음 소스 코드를 완성하여 x의 값이 10이 아닐 때 'ok'가 출력되게 만드세요.
x = 5
if _______________________:
    print('ok')
실행결과)
ok

정답)
x != 10
풀이) 
문제에 나왔듯이 10이 아닐 때라는 조건을 만들어주면 된다.

13.7심사문제: 온라인 할인 쿠폰 시스템 만들기

  • 표준 입력으로 가격(정수)과 쿠폰 이름이 각 줄에 입력됩니다. Cash3000 쿠폰은 3,000원, Cash5000 쿠폰은 5,000원을 할인합니다. 쿠폰에 따라 할인된 가격을 출력하는 프로그램을 만드세요(input에서 안내 문자열은 출력하지 않아야 합니다).
    • 7줄 작성
입력) 27000
입력) Cash3000
결과) 24000
---------------------
입력) 72000
입력) Cash5000
결과) 67000

정답)
a = int(input())
b = input()
if b == 'Cash3000':
    a -= 3000
if b == 'Cash5000':
    a -= 5000
print(a)
풀이) 
처음 입력하는 변수를 선언해주고 입력 값이 정수형으로 저장되게 설정
두 번째 입력변수는 문자열임으로 그대로 저장
if문을 두개 만들어서 하나는 두 번째 입력한 변수이름과 Cash3000이 같을 때
하나는 두번째 입력한 변수 이름이 Cash5000일 때로 나누어서
a값에 할인 값을 적용시켜서 출력하게 만들면 답이다.
profile
끝없이 탐구하는 iOS 개발자 유재우입니다!

0개의 댓글