조건식 활용
if (조건식) : else :
파이썬의 '거짓'
0이 거짓임
파이썬의 '참'
0이 아니면 모두 참 1도 참이고 -10도 참임
참 코드
a = -10
if (a) :
print("참 입니다.")
else :
print("거짓 입니다.")
실행 결과
참 입니다.
거짓 코드
a = 0
if (a) :
print("참 입니다.")
else :
print("거짓 입니다.")
실행 결과
거짓 입니다.
들여쓰기!
실행문이 여러 개일 때는 반드시 들여쓰기를 해야 함
들여쓰기 에러 코드
a = 0
if (a):
print("참 입니다.")
print("리얼 입니다.")
print("참 리얼 입니다.")
else :
print("거짓 입니다.")
print("라이 입니다.")
print("거짓 라이 입니다.")
실행 결과
Error: invalid syntax
정상 코드
a = 0
if (a):
print("참 입니다.")
print("리얼 입니다.")
print("참 리얼 입니다.")
else :
print("거짓 입니다.")
print("라이 입니다.")
print("거짓 라이 입니다.")
실행 결과
거짓 입니다.
라이 입니다.
거짓 라이 입니다.
홀짝 게임 완성
간단한 홀짝 게임을 만들기 위한 단계입니다.
- 사용자 입력 받기 : 사용자로부터 '홀' 또는 '짝'을 입력 받습니다.
- 컴퓨터의 숫자 생성 : random 모듈을 사용하여 1과 100 사이의 무작위 숫자를 생성합니다.
- 홀짝 판별 : 컴퓨터가 생성한 숫자가 홀수인지 짝수인지 판별합니다.
- 결과 비교 및 출력 : 사용자의 선택과 컴퓨터의 숫자를 비교하여 결과를 출력합니다.
숫자로 홀수 짝수 비교
import random
number = random.randint(1, 100)
you = int(input("정수를 입력하세요."))
if ( number % 2 == you % 2 ) :
print("맞췄다!")
else :
print("못 맞췄다..")
print(f"생성된 랜덤 정수: {number}")
실행 결과
정수를 입력하세요. 13
못 맞췄다..
생성된 랜덤 정수 : 48
다른 문자를 입력하면..?
Traceback(most recent call last):
File“...”,line27,in<module>
You = int(input(“정수를 입력하세요.”))
VALUEERROR: invalid literal for int() with base 10:‘a’
정수만 입력 받는 방법
while(True) :
you = input("정수를 입력하세요.")
if not you.isnumeric() :
print("정수가 아닙니다.")
print("정수를 입력 하세요.")
continue
break
you_number = int(you)
코드 | 설명 |
---|---|
input() | - 보드로 입력한 값을 문자열로 반환 |
isnumeric() | - 주어진 문자열의 모든 문자가 숫자인 경우 참을 반환함 - 그 렇지 않은 경우 거짓을 반환 |
int() | - 주어진 문자열을 정수로 반환 |
정수만 입력가능한 홀짝 게임
import random
number = random.randint(1, 100)
while(True) :
you = input("정수를 입력하세요.")
if not you.isnumeric():
print("정수가 아닙니다.")
print("정수를 입력하세요.")
continue
break
you_number = int(you)
if ( number % 2 == you_number % 2 ) :
print("이겼습니다.")
else :
print("졌습니다.")
print(f"생성된 랜덤 정수 : {number}")
실행 결과
정수를 입력하세요. a
정수가 아닙니다.
정수를 입력하세요.
정수를 입력하세요. 11
이겼습니다.
생성된 랜덤 정수 : 73
while(조건식) :
while(조건식)
조건식이 참이면 들여쓰기 한 문장을 실행하고 조건식이 거짓이면 실행하지 않음
참 코드
int game = 2
while (game):
게임 실행
실행 결과
game 이 참이므로 게임을 실행함
거짓 코드
int game = 0
while (game):
게임 실행
실행 결과
game 이 거짓이므로 게임을 실행하지 않음
게임을 5회만 실행 해보기
game = 5
while (game):
print("게임 실행...")
game = game - 1
실행 결과
게임 실행...
게임 실행...
게임 실행...
게임 실행...
게임 실행...
내가 이기면 win 변수를 증가, 내가 지면 lose 변수를 증가
import random
game = 3
win = 0
lose = 0
while(game):
number = random.randint(1, 100)
while(True):
input_num = input("정수를 입력하세요.")
if not input_num.isnumeric():
print("정수가 아닙니다.")
continue
break
game = game - 1
you_number = int(input_num)
if (number % 2 == you_number % 2):
print("내가 이겼다!")
win = win + 1
else:
print("내가 지다니..")
lose = lose + 1
print(f"생성된 랜덤 정수: {number}")
print(f"{win}승 {lose}패")
실행 결과
정수를 입력하세요.2
내가 지다니..
생성된 랜덤 정수: 59
정수를 입력하세요.3
내가 지다니..
생성된 랜덤 정수: 20
정수를 입력하세요.1
내가 지다니..
생성된 랜덤 정수: 22
0승 3패
= RESTART:
정수를 입력하세요.2
내가 지다니..
생성된 랜덤 정수: 17
정수를 입력하세요.2
내가 지다니..
생성된 랜덤 정수: 73
정수를 입력하세요.2
내가 이겼다!
생성된 랜덤 정수: 36
1승 2패
달러 환전하기
간단한 달러 환전 게임을 만들기 위해 절차는 아래와 같습니다
- 환전할 금액과 환율을 입력합니다.
- 몫을 구하는 연산과 나머지를 구하는 연산을 이용합니다.
- 환전할 금액을 사용자가 직접 입력하게 합니다.
- 환율을 사용자가 직접 입력하게 합니다.
환전 예제 1
- 친구들과 미국으로 여행을 갑니다. 환율을 보니 1달러는 1146원 입니다.
- 백만원으로 100달러 지폐를 몇 장 받을 수 있을까요?
- 그리고, 돌려받는 돈은 얼마인가요?
100달러 환전
money = 1000000
dollar = 1146
hundred_dollar = money // ( dollar * 100 )
print(f"100 달러: {hundred_dollar} 장")
returned_money = money % dollar
print(f"돌려받은 돈: {returned_money} 원")
실행 결과
100 달러: 8 장
돌려받은 돈: 83200 원
환전 예제 2
- 친구들과 미국으로 여행을 갑니다. 환율을 보니 1달러는 1146원 입니다.
- 백만원으로 10달러, 5달러, 1달러 지폐를 각각 몇 장 받을 수 있나요?
- 그리고, 돌려받는 돈은 얼마인가요?
[ 10, 5, 1 ] 달러 환전
total_money = 1000000
banknotes = [10, 5, 1]
exchange_rate = 1146
for note in banknotes:
count = total_money // (exchange_rate * note)
total_money -= exchange_rate * note * count
print(f"{note} 달러: {count} 장")
print(f"돌려받은 돈: {total_money} 원")
실행 결과
10 달러: 87 장
5 달러: 0 장
1 달러: 2 장
돌려받은 돈: 688