● 알고리즘

=> 쉽게 말해, 문제 풀이에 필요한 계산절차 or 처리과정의 순서를 뜻한다.

=> 연산, 데이터 마이닝(기계학습), 자동화된 추론을 수행한다.

 

※ UP & DOWN 숫자 맞추기 게임 만들기

-> 1~100 사이의 정답 숫자를 랜덤으로 하나 정하고, 정답 숫자를 맞출 때까지 숫자를 입력하는 게임

-> 내가 입력한 숫자가 정답보다 작으면 'down', 정답보다 크면 'up'을 출력하고 숫자를 다시 입력받는다.
-> 정답을맞추면  '정답!'이라고 출력하고 게임을 끝낸다.

import random 	# random 함수를 쓰기위해 import 해줘야한다.

num = random.randrange(1,101)
print(num)

#정답을 맞출 때까지 반복하기(정답을 맞추면 반복에서 벗어나기)
while True:
    answer = int(input('예상숫자 : '))
    if answer == num:
        print('정답~!')
        break
    elif answer < num:
        print('Up')
    else:
        print('Down')

28
예상숫자 : 32
Down
예상숫자 : 14
Up
예상숫자 : 20
Up
예상숫자 : 25
Up
예상숫자 : 28
정답~!

 

UP & DOWN 확장해보기

-> 기회는 5번까지만

-> 5회가 초과하면 '횟수초과' 메시지와 함께 정답을 알려준다.

-> 정답을 맞추면 몇번째에 맞추었는지 출력한다.

import random

num = random.randrange(1,101)
print(num)
n = 1 # 횟수

while True:
    answer = int(input('예상숫자 : '))
    if answer == num:
        print('정답~!')
        print(n,'번만에 맞추었습니다.')
        break
    elif answer < num:
        print('Up')
        n += 1
    else:
        print('Down')
        n += 1
    if n == 6:
        print('횟수가 초과되었습니다. 정답은 ',answer)
        break

42
예상숫자 : 45
Down
예상숫자 : 89
Down
예상숫자 : 42
정답~!
3 번만에 맞추었습니다.

 

사칙연산 프로그램 만들기

-> 두 수와 사칙연산기호(+,-,*,/)를 입력받아 연산 기호에 따라 연산 결과를 출력하는 프로그램을 만든다.
-> 사칙연산기호(+,-,*,/)가 아닌 경우 '잘못입력하셨습니다'를 출력

n1 = int(input('첫번째 숫자 '))
n2 = int(input('두번째 숫자 '))
m = input('+,-,*,/ 중 입력하세요.')

if m == '+':
    print(f,n1+n2)
elif m == '-':
    print(f'{n1}-{n2} = ',n1-n2)
elif m == '*':
    print(f'{n1}*{n2} = ',n1*n2)
elif m == '/':
    print(f'{n1}/{n2} = ',n1/n2)
else:
    print('잘못입력하셨습니다.')

첫번째 숫자 10
두번째 숫자 20
+,-,*,/ 중 입력하세요.*
10*20 =  200

 

 할인된 금액 계산하기

-> 물건 구매가를 입력받고, 금액에 따른 할인율을 계산하여 구매가, 할인율, 할인금액,
-> 지불금액을 출력하는 프로그램
-> 1만원이상~5만원미만 할인율 5%
-> 5만원이상~10만원미만 할인율 7%
-> 10만원이상 할인율 10%

A = int(input('물건 구매가를 입력하세요 : '))
d = 0
dis = 0
if A >= 10000 and A < 50000:
    d = 0.05
    dis = A*d
    print(f'구매가={A} 할인율={d*100}% 할인금액={dis} 지불금액={A-dis}')
elif A >= 50000 and A < 100000:
    d = 0.07
    dis = A*d
    print(f'구매가={A} 할인율={d*100}% 할인금액={dis} 지불금액={A-dis}')
elif A >= 100000:
    d = 0.1
    dis = A*d
    print(f'구매가={A} 할인율={d*100}% 할인금액={dis} 지불금액={A-dis}')
else:
    print(f'구매가={A} 할인율=0% 할인금액=0 지불금액={A}')

물건 구매가를 입력하세요 : 15000
구매가=15000 할인율=5.0% 할인금액=750.0 지불금액=14250.0

 

+ Recent posts