def add_func(num_1, num_2):
return num_1 + num_2
def sub_func(num_1, num_2):
return num_1 - num_2
def mul_func(num_1, num_2):
return num_1 * num_2
def div_func(num_1, num_2):
return num_1 / num_2
def quo_func(num_1, num_2):
return num_1 // num_2
def rem_func(num_1, num_2):
return num_1 % num_2
def pow_func(num_1, num_2):
return num_1 ** num_2
while True:
func = int(input("기능을 선택하세요: \n > 1. 덧셈, 2. 뺄셈, 3. 곱셈,\n > 4. 나눗셈 , 5.몫, 6. 나머지,\n > 7. 제곱승, 8. 종료\n"))
if func == 8:
print("** See you next time **")
break
else:
num_1 = int(input("숫자1 입력: "))
num_2 = int(input("숫자2 입력: "))
print("="*40)
if func == 1:
print("> 결과: {:,d} + {:,d} = {:,d}".format(num_1, num_2, add_func(num_1, num_2)))
elif func == 2:
print("> 결과: {:,d} - {:,d} = {:,d}".format(num_1, num_2, sub_func(num_1, num_2)))
elif func == 3:
print("> 결과: {:,d} * {:,d} = {:,d}".format(num_1, num_2, mul_func(num_1, num_2)))
elif func == 4:
print("> 결과: {:,d} / {:,d} = {:,d}".format(num_1, num_2, div_func(num_1, num_2)))
elif func == 5:
print("> 결과: {:,d} // {:,d} = {:,d}".format(num_1, num_2, quo_func(num_1, num_2)))
elif func == 6:
print("> 결과: {:,d} % {:,d} = {:,d}".format(num_1, num_2, rem_func(num_1, num_2)))
elif func == 7:
print("> 결과: {:,d} ** {:,d} = {:,d}".format(num_1, num_2, pow_func(num_1, num_2)))
print("="*40)
# 출력예시
# 기능을 선택하세요:
# > 1. 덧셈, 2. 뺄셈, 3. 곱셈,
# > 4. 나눗셈 , 5.몫, 6. 나머지,
# > 7. 제곱승, 8. 종료
# 1
# 숫자1 입력: 3
# 숫자2 입력: 5
# ========================================
# > 결과: 3 + 5 = 8
# ========================================
# 기능을 선택하세요:
# > 1. 덧셈, 2. 뺄셈, 3. 곱셈,
# > 4. 나눗셈 , 5.몫, 6. 나머지,
# > 7. 제곱승, 8. 종료
# 6
# 숫자1 입력: 10
# 숫자2 입력: 3
# ========================================
# > 결과: 10 % 3 = 1
# ========================================
# 기능을 선택하세요:
# > 1. 덧셈, 2. 뺄셈, 3. 곱셈,
# > 4. 나눗셈 , 5.몫, 6. 나머지,
# > 7. 제곱승, 8. 종료
# 8
# ** See you next time **
# === Code Execution Successful ===
amt = int(input("예치금(원) 입력: "))
yrs = int(input("예치기간(년) 입력: "))
rto = float(input("연이율(%) 입력: "))
def res_print(amt, tot_int, tot_amt, flag):
print("="*40)
print("> 단리계산 결과" if flag == "simp" else "> 월복리계산 결과")
print("> 원금(원): {:,d}원".format(amt))
print("> 이자(원): {:,d}원".format(int(tot_int)))
print("> 총 수령(원): {:,d}원".format(int(tot_amt)))
print("="*40)
# 단리
def calc_simp(amt, yrs, rto):
tot_int, tot_amt = 0, 0
for yr in range(yrs):
tot_int += amt * (rto * 0.01)
tot_amt = amt + tot_int
res_print(amt, tot_int, tot_amt, "simp")
# 월복리
def calc_comp(amt, yrs, rto):
tot_int, tot_amt = 0, amt
mths = yrs * 12
for mth in range(mths):
tot_amt += tot_amt * (rto * 0.01 / 12)
tot_int = tot_amt - amt
res_print(amt, tot_int, tot_amt, "comp")
calc_simp(amt, yrs, rto)
calc_comp(amt, yrs, rto)
# 출력예시
# 예치금(원) 입력: 20000000
# 예치기간(년) 입력: 5
# 연이율(%) 입력: 5
# ========================================
# > 단리계산 결과
# > 원금(원): 20,000,000원
# > 이자(원): 5,000,000원
# > 총 수령(원): 25,000,000원
# ========================================
# ========================================
# > 월복리계산 결과
# > 원금(원): 20,000,000원
# > 이자(원): 5,667,173원
# > 총 수령(원): 25,667,173원
# ========================================
start_num = int(input("시작 값 입력: "))
gap = int(input("공차 입력: "))
end_dgr = int(input("종료값 차수 입력: "))
print("="*40)
def end_num_calc(start_num, gap, end_dgr):
cur_num = start_num
sum_cnt = 1
cum_sum = 0
while sum_cnt <= end_dgr:
cum_sum += cur_num
print(f"> {sum_cnt}번째 항의 값: {cur_num}")
print(f"> {sum_cnt}번째 항까지의 누적합: {cum_sum}")
sum_cnt += 1
cur_num += gap
end_num_calc(start_num, gap, end_dgr)
print("="*40)
# 시작 값 입력: 2
# 공차 입력: 3
# 종료값 차수 입력: 7
# ========================================
# > 1번째 항의 값: 2
# > 1번째 항까지의 누적합: 2
# > 2번째 항의 값: 5
# > 2번째 항까지의 누적합: 7
# > 3번째 항의 값: 8
# > 3번째 항까지의 누적합: 15
# > 4번째 항의 값: 11
# > 4번째 항까지의 누적합: 26
# > 5번째 항의 값: 14
# > 5번째 항까지의 누적합: 40
# > 6번째 항의 값: 17
# > 6번째 항까지의 누적합: 57
# > 7번째 항의 값: 20
# > 7번째 항까지의 누적합: 77
# ========================================
start_num = int(input("시작 값 입력: "))
gap = int(input("공차 입력: "))
end_dgr = int(input("종료값 차수 입력: "))
print("="*40)
def end_num_calc(start_num, gap, end_dgr):
cur_num = start_num
sum_cnt = 1
cum_sum = 0
while sum_cnt <= end_dgr:
cum_sum += cur_num
print(f"> {sum_cnt}번째 항의 값: {cur_num}")
print(f"> {sum_cnt}번째 항까지의 누적합: {cum_sum}")
sum_cnt += 1
cur_num *= gap # 등차 수열 코드 중 이 부분만 '*='로 변경
end_num_calc(start_num, gap, end_dgr)
print("="*40)
# 출력예시
# 시작 값 입력: 2
# 공차 입력: 3
# 종료값 차수 입력: 5
# ========================================
# > 1번째 항의 값: 2
# > 1번째 항까지의 누적합: 2
# > 2번째 항의 값: 6
# > 2번째 항까지의 누적합: 8
# > 3번째 항의 값: 18
# > 3번째 항까지의 누적합: 26
# > 4번째 항의 값: 54
# > 4번째 항까지의 누적합: 80
# > 5번째 항의 값: 162
# > 5번째 항까지의 누적합: 242
# ========================================
*이 글은 제로베이스 데이터 취업 스쿨의 강의 자료 일부를 발췌하여 작성되었습니다.