ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [CHAPTER 4] 조건문
    Deep Learning/인공지능 입문 코딩 2021. 5. 16. 16:50
    728x90

    프로그램의 기본 제어 구조

    • 순차 구조 : 여러 명령이 순차적으로 실행되는 구조
    • 선택 구조 : 여러 개 중 하나의 명령문을 선택하여 실행하는 구조
    • 반복 구조 : 동일한 명령이 반복되면서 실행되는 구조

    이번 챕터에서는 선택 구조에 대해 자세히 살펴보겠다.


    선택 구조

    if

    조건을 만족하는지 그렇지 않은지 판정하는 식을 조건식이라고 한다.

    조건식을 사용하는 방법에 대해 알아보자

    if 조건식 :
    	실행할 내용

    조건식은 True, False를 가질 수 있는 식을 말한다.

    True가 된다면 if문 안의 내용을 실행하고

    False가 된다면 건너뛴다.

     

    사용 예시를 보자.

    >>> x = 100
    >>> if x < 1:
    	print("x는 1보다 작다.")
        
    >>> if x > 1:
    	print("x는 1보다 크다.")
    
    x는 1보다 크다.

    x < 1 의 결과는 False 따라서 print("x는 1보다 작다.") 의 명령은 실행되지 않는다.

    x > 1 의 결과는 True 따라서 print("x는 1보다 크다.")의 명령은 실행된다.

     

    :(콜론) 아래의 줄은 반드시 들여 쓰기를 해야 한다.

    >>> score = 95
    >>> if score >= 90:
    	print("축하합니다.")
    	print("합격입니다.")
    	print("장학금도 받을 수 있습니다.")
    
    축하합니다.
    합격입니다.
    장학금도 받을 수 있습니다.

    들여 쓰기를 이용하여 문장들을 묶을 수 있다.

     

    if-else

    if-else문은 "조건이 참이라면 이것을 실행하고, 그렇지 않으면 저것을 실행해라"라고 말하는 것이다.

     

    사용 예시를 보자.

    score = 50
    if score >= 60:
    	print("합격입니다.")
    else:
    	print("불합격입니다.")
    불합격입니다.

    조건 scroe >= 60 은 False 이므로 else 블록을 실행한다.

     

    또 다른 예시이다.

    num = int(input("양의 정수를 입력하시오: "))
    if num % 2 == 0:
        print("짝수 입니다.")
    else:
        print("홀수 입니다.")
    양의 정수를 입력하시오: 12
    짝수 입니다.

    % 연산자를 이용하여 짝수, 홀수를 구분할 수 있다.

     

    if-elif-else

    if-elif-else 문에서는 조건이 거짓일 때 다른 조건을 검사할 수 있다. 여기서 elif는 else if를 줄인 것이다.

     

    사용 예시를 보자.

    num = int(input("정수를 입력하시오: "))
    if num > 0:
        print("양수입니다.")
    elif num == 0:
        print("0입니다.")
    else:
        print("음수입니다.")
    정수를 입력하시오: 1
    양수입니다.
    정수를 입력하시오: 0
    0입니다.
    정수를 입력하시오: -8
    음수입니다.

    코드를 말로 풀어 설명하면 아래와 같다.

    num > 0이 참이면

    "양수입니다."

    그게 아니라 num == 0 이 참이면

    "0입니다."

    그것도 아니면

    "음수입니다."를 출력해라

    중첩

    위에서 배운 조건문을 중첩시켜서 코드를 작성할 수 있다.

    num = int(input("정수를 입력하시오: "))
    if num >= 0:
        if num == 0:
            print("0입니다.")
        else:
            print("양수입니다.")
    else:
        print("음수입니다.")
    정수를 입력하시오: 0
    0입니다.
    정수를 입력하시오: 10
    양수입니다.
    정수를 입력하시오: -10
    음수입니다.

    음수를 입력할 경우에는 "음수입니다."를 출력하고

    0 또는 양수를 입력할 경우에는 0인지, 양수인지 다시 판단을 하여 "0입니다" 또는 "양수입니다."를 출력한다.


    지금까지 배운 것들로

    로그인 처리

    id와 password가 각각 'ilovepython', 'mypass1234'일 때 로그인을 처리하는 프로그램이다.

    id = 'ilovepython'
    pw = 'mypass1234'
    s= input("아이디를 입력하시오: ")
    p= input("패스워드를 입력하시오: ")
    
    if s == id and p == pw:
        print("환영합니다.")
    elif s != id:
        print("아이디를 찾을 수 없습니다.")
    elif p != pw:
        print("비밀번호가 틀렸습니다.")
    else:
        print("error")
    
    아이디를 입력하시오:  ilovepython
    패스워드를 입력하시오:  mypass1234
    환영합니다.

    사용자로부터 입력을 받아 도형 그리기

    사각형, 삼각형, 원을 그릴 수 있는 프로그램이다.

    import turtle
    t = turtle.Turtle()
    t.shape("turtle")
    
    s = turtle.textinput("", "도형을 입력하시오: ")
    if s == "사각형" :
        s = turtle.textinput("", "가로: ")
        w = int(s)
        s = turtle.textinput("", "세로: ")
        h = int(s)
        t.forward(w)
        t.left(90)
        t.forward(h)
        t.left(90)
        t.forward(w)
        t.left(90)
        t.forward(h)
        
    elif s == "삼각형" :
        s = turtle.textinput("", "길이: ")
        l = int(s)
        t.forward(l)
        t.left(120)
        t.forward(l)
        t.left(120)
        t.forward(l)
        
    elif s == "원":
        s = turtle.textinput("", "반지름: ")
        r = int(s)
        t.circle(r)
    else:
        print("error")
    
    turtle.done()
    

    728x90

    'Deep Learning > 인공지능 입문 코딩' 카테고리의 다른 글

    [CHAPTER 6] 함수  (0) 2021.05.22
    [CHAPTER 5] 반복문  (0) 2021.05.21
    [CHAPTER 3] 연산자  (0) 2021.05.15
    [CHAPTER 2] 변수  (0) 2021.05.14
    [CHAPTER 1] 데이터 과학과 파이썬  (0) 2021.05.04

    댓글

Designed by Tistory.