[엘리스 AI 7기 프리트랙] 02. 조건문

bee·2023년 1월 27일
0
post-thumbnail

해당 시리즈의 모든 내용은 국비지원 부트캠프 '엘리스 AI 7기' 이호준 선생님의 AI 프리트랙 강의를 수강하며 수업 내용을 정리한 것 입니다.

1. 입력 : input()

  • print를 이용해서 컴퓨터로부터 정보를 전달받았다면, input을 이용해서 우리가 정보를 컴퓨터에게 전달해줄 수 있다.
  • 컴퓨터는 사용자가 전달한 값을 '변수'에 보관한다.
  • 사용방법 : 변수 = input()
  • 터미널 값을 입력해준다. (터미널 : 사람과 컴퓨터 사이의 통로)
  • input()은 어떤 값을 넣든지 간에 'str'으로 인식한다. => 숫자를 입력하기 위해서는 입력받은 후에 '형 변환'이 필요

[실습] 따라쟁이 앵무새

# 
>>> var = input()
>>> print("앵무새 : " , var)
>>> print(type(var))

2. 형 변환

  • 자료형 사이의 변환
  • 사용방법 : 바꿀자료형(바뀔자료형)
>>> a = '345'
>>> b = int('345')

>>> print(a, b)
345 345

>>> print(type(a))
<class 'str'>

>>> print(type(b))
<class 'int'>

[실습] 2배로 적금

>>> money = input()
>>> money = int(money)
>>> print(money * 2)

3. 논리 자료형과 비교연산

논리 자료형

참(True) 혹은 거짓(False)을 나타내는 자료형

비교 연산자

  • 숫자나 문자의 값을 비교하는 연산자

  • 주어진 진술이 참이면 True, 거짓이면 False를 출력한다.

  • == : 같다

  • != : 다르다

  • > : 왼쪽이 더 크다

  • < : 오른쪽이 더 크다

  • >= : 왼쪽이 같거나 크다

  • <= : 오른쪽이 같거나 크다

>>> print(3 < 5)
True

>>> print(Ant == ant) # [주의] 파이썬은 대소문자를 구별하므로 서로 다른 단어이다.
False

>>> print(2 >= 10)
False

>>> print(5 != 10)
True


[실습] 명제 만들기

# 명제(참과 거짓을 분명하게 나눌 수 있는 문장) 만들기
>>> ans1 = 3 == 3
>>> ans2 = 5 < 3
>>> ans3 = 4 >= 2

>>> print(ans1, ans2, ans3)
True False True

4. 논리 자료형의 연산

1) AND

각 논리가 모두 True이면 True

>>> print(3==3 and 4<=5 and 6>2)
True

2) OR

여러 논리들 중 하나도 True가 있으면 True

>>> print(3==4 or 4<=5 or 6<2)
True

>>> print(3==6 or 4>7 or 2>=3)
False

3) NOT

논리값을 반대로 뒤집는다

>>> print(not 3==4) # 원래는 False이기때문에 뒤집으면 True
True

[실습] 빈칸 추론

# 괄호 안에 적절한 명제를 채워 stat1이 True가 되도록 해보자
>>> stat1 = 3==3 and 2<4 and (1<=1) # True and True and (True)

# 괄호 안에 적절한 명제를 채워 stat1이 True가 되도록 해보자
>>> stat2 = 4>=6 or "apple"=="Apple" or (1 != 1) # False or False or (False)

# 괄호 안에 적절한 명제를 채워 stat1이 True가 되도록 해보자
>>> stat3 = not (False) # (False)

# 위의 세 변수를  출력해서 True, False의 여부를 확인해보자
>>> print(stat1, stat2, stat3)

True False True

5. 조건문 if

  • 어떠한 특정 조건에 따라서 실행되는 명령이 달라지는 구문
  • 조건에 따라서 해야할 일이 다른 경우, 조건문이 필요하다
  • 조건이 True일 때, 명령을 실행한다.
  • if문에 들어갈 명령들은 같은 들여쓰기로 구분한다.
if 조건 : 
	<수행할 명령>
    <수행할 명령>
    .
    .
    .
string = "abc"

if string[0] == "a" :
	count = count + 1
    print(string)
    

else

  • if문에서 조건을 만족하지 못한다면 else문을 실행한다.
if 조건 : 
	<수행할 명령>
else :
    <수행할 명령>
x = input()
if x in ['a', 'e', 'I', 'o', 'u']:
	print("모음입니다.")
else : 
	print("자음입니다.")

[실습] 홀짝판별기

num = int(input())
if num % 2 == 0:
	print(num, "짝수입니다.")
else:
	print(num, "홀수입니다.")

6. if-elif-else 문

조건 1이 True이면 => if문 실행
조건 1이 False이면서 조건 2가 True면 => elif문 실행
조건 1과 2 모두 False이면 => else문 실행

if 조건 1:
	<수행할 명령>
elif 조건 2:
	<수행할 명령>
else:
	<수행할 명령>

[실습] 업-다운 게임

answer = 25
submit = int(input())

if answer < submit : 
	print("정답보다 더 큰 수를 입력했습니다.")
elif answer == submit : 
	print("정답!")
else:
	print("정답보다 더 작은 수를 입력했습니다.")

[미션]

시험점수를 입력받고 77점 이상일 때 'A0', 88점 이상일 때 'A+', 0점일 때 'F', 그 외 'B+'로 학점을 출력하는 프로그램을 작성해라.

score = int(input())

if score >= 77 and score < 88 :
	print("A0")
elif score >= 88 and score <= 100 :
	print("A+")
elif score == 0 :
	print("F")
else:
	print("B+")

근데 이거 정답이 아니라고 한다.. 제대로 입력한것같은데 어디서 잘못되었는지 몰것다 ㅠㅠ 이렇게 쉬운문제를...;;;;

profile
벌집처럼 밀도있게 차곡차곡 쌓아나가는중

0개의 댓글