본문 바로가기
Python/닭치고 Algorithm

14강 계산기(Python Algorithm 14 calculator)

by OneHundredPlan 2020. 4. 4.
반응형

14강 계산기(Python Algorithm 14 calculator)

 

부제 : 알고리즘을 배우면서 파이썬 기초부터 RPG까지 정복

내용 : 초중고 또는 코딩 기초 입문자를 위한 누구나 따라 배울 수 있는 Python Algorithm 프로그램 기초 강의

 

1. 파이썬 기초 입문자

2. 알고리즘 기초에서 수학 기초

3. 기초 코딩

4. Text RPG Project

 

[동영상강의]

https://youtu.be/wc0ByU-d7ck

Python-Algorithm-14-calculator.pdf
0.09MB

14. 계산기(calculator)

이번 강의는 쉬어가는 강의로 계산기를 만드는 프로그램으로 강의하고자 합니다.

여태 배운 내용으로 한번 구현을 해 봅시다.

먼저 더하기를 구현해 봅시다.

 

>>> def addition():
		first_number = 25
		second_number = 40
		print(first_number + second_number)
	
>>> 

 

두 입력값을 입력해서 더하는 과정으로 구현을 해 봅시다.

input() 을 사용하면 될 것 같은 생각이 바로 드시죠?

raw_input() 이라는 것도 있었는데 파이썬 3 부터는 삭제 되었으므로 신경안쓰도 됩니다.

 

>>> def addition():
		first = input("Add two numbers. What is the first number?")
		second = input("What is the second number?")
		print(first + second)
	
>>> addition()
Add two numbers. What is the first number?10
What is the second number?20
1020
>>> 

 

결과로 30이 안나오고 1020 문자처럼 붙어서 계산도 되지 않은 채 나옵니다.

input 에서 반환하는 값은 항상 문자열입니다.

그러므로 10, 20이라는 숫자를 입력하더라도 반환되는 값은 문자열이기 때문에 1020 처럼 문자열로 되어 버립니다.

int 를 사용하여 입력한 값을 정수형으로 변환을 해 줘야 합니다.

 

>>> def addition():
		first = int(input("Add two numbers. What is the first number?"))
		second = int(input("What is the second number?"))
		print(first + second)
	
>>> addition()
Add two numbers. What is the first number?10
What is the second number?20
30
>>> 

 

 

이제 제대로 덧셈이 되어 나옵니다.

자료변환이 어떤 건지 이제 슬슬 감이 옵니다. 13강의 list 를 set 으로 바꾸는 것 하고 지금 문자열을 정수형으로 변환하는 것 이 정도면 자료 변환이 어떤 건지 느낌이 옵니다.

이제 본격적으로 코딩을 해 봅시다.

 

calculator.py

 

 

# 계산기
# 입력 : 두 수를 입력
# 출력 : 계산 결과 수 출력

def addition(): # 덧셈
  first = int(input("What is your first number? "))
  second = int(input("What is your second number? "))
  print(first + second)

def subtraction(): # 뺄셈
  first = int(input("What is your first number? "))
  second = int(input("What is your second number? "))
  print(first - second)

def multiplication(): # 곱셈
  first = int(input("What is your first number? "))
  second = int(input("What is your second number? "))
  print(first * second)

def division(): # 나눗셈
  first = int(input("What is your first number? "))
  second = int(input("What is your second number? "))
  print(first / second)

def modulo(): # 나머지
  first = int(input("What is your first number? "))
  second = int(input("What is your second number? "))
  print(first % second)

addition()
subtraction()
multiplication()
division()
modulo()

 

 

addition
What is your first number? 45
What is your second number? 78
123
subtraction
What is your first number? 76
What is your second number? 40
36
multiplication
What is your first number? 56
What is your second number? 4
224
division
What is your first number? 56
What is your second number? 7
8.0
modulo
What is your first number? 45
What is your second number? 9
0
PS C:\Users\khd>

 

구독 좋아요 부탁드립니다. 큰 힘이 됩니다.

 

 

 

 

댓글