본문 바로가기
프로그래밍/파이썬기초

연산자와 수식_파이썬 기초

by 조크리 2021. 3. 15.
반응형

 

 

 

파이썬 찐초보 과정 3번째 글이다!

 

 

 

오늘의 목표

1. 파이썬 언어세어 '산술 연산자'에 대해 배우고 연산자와 변수를 이용해 수식을 세운다.

2. 데이터를 입력받아 변수에 저장한 후에 수식으로 값을 계산한 후 결과를 출력한다.

 

 

 

 

 

1. 산술연산자

 

산술연산자는 더하기, 빼기, 곱하기, 나누기가 있으며 '나머지'를 구하는 % 연산자를 의미한다. 

기호로 나타내면 

 

+, -, *, /, % 

 

이렇게 나타낼 수 있다. 

 

8 + 5 #결과는 13
8 - 5 # 결과는 3
8/5 # 결과는 1.6
8 * 5 # 결과는 40
8 % 5 # 결과는 3(8에서 5를 나눈 나머지)

 

 

 

 

2. 숫자를 입력받아서 연산하기

 

이번에는 input()을 활용해서 연산하는 프로그램을 활용해보자! 

 

연산의 경우 숫자끼리는 모든 연산이 가능하지만 문자끼리는 뺄셈, 나눗셈, 곱셈, 나머지연산이 불가능하다.

 

문자끼리는 +(덧셈)은 가능한데 문자 + 문자의 경우 문자 두 개를 연이어 써주는 것을 의미한다. 

 

아래의 그림을 보면 알 수 있듯이 string와 string, 즉 문자와 문자끼리는 빼기가 불가능해서 에러가 나온다. 

 

 

이런 경우에는 input() 앞에 int()를 붙여줘서 입력받은 값을 정수로 변환시켜주면 된다~!

 

int를 넣어서 오류 해결!

 

하지만 사용자가 수를 입력할 때 정수를 입력하지 않고 3.5, 5.6 과 같이 소수를 입력했다면 또 에러가 뜬다.

 

그런 경우를 대비하려면 정수를 의미하는 int말고 eval로 바꾸어주면 된다~!

eval은 evaluate를 의미하며 실수로 받아준다. 

 

 

 

3. 연산자의 우선순위

 

연산자 내에서 우선순위는 기본 수학의 우선순위와 같다. 

 

+, - 보다 *, /, % 가 우선순위가 높고 이것보다 (  )가 우선순위가 높다!

 

 

 

4. 수식의 의미

 

프로그래밍에서 수식은

 

변수 연산자 변수 

 

라고 볼 수 있다. 

 

합  = 변수1 + 변수2

차 = 변수1 - 변수2

곱 = 변수1 * 변수2

나누기 = 변수1/ 변수2

나머지 = 변수1 % 변수2

 

아래의 그림을 보면 더욱 이해가 빠를 것이다. 

 

 

 

 

 

5. 다양한 수식

 

면적 = 가로 * 세로

평균 = (a + b)/ 2

화씨온도 = 32 + 섭씨온도 * 9 / 5

원의 면적 = 3.14 * 반지름 * 반지름

 

다양한 수식을 만드는 프로그램을 작성해보자!

 

 

 

 

1) 직사각형의 가로와 세로 길이를 입력받아 면적을 계산하는 프로그램을 만들어보자. 

 

height = eval(input("높이를 입력하세요 : \n"))
width = eval(input("너비를 입력하세요 : \n"))
area = height * width
print(area)

 

 

 

2) 국어와 수학 점수를 입력받아 평균 값을 계산하는 프로그램을 만들어보자. 

kor = int(input("국어 점수 : \n"))
math = int(input("수학 점수 : \n"))
average = (kor + math) / 2
print("평균은 %f입니다. "%(average))

 

 

3) BMI를 구하는 프로그램을 만들어보자. 

코드 중 %0.2f는 실수 계산을 했을 때 소수 점 아래로 2자리까지만 나타내라는 의미이다.

height = eval(input("키(m) : \n"))
weight = eval(input("몸무게(kg) : \n"))

bmi = weight/ (height * height)

print("키 %0.2f m이고, 몸무게 %0.2f kg인 사람의 BMI는 %0.2f 입니다."%(height, weight, bmi))

 

 

4) 섭씨 온도를 화씨온도로 바꾸는 프로그램을 만들어보자. 

 

c = eval(input("섭씨온도 : \n"))
f = c * 9 / 5 + 32

print("섭씨 온도 %0.2f 도는 화씨 온도 %0.2f 도 입니다. " %(f, c))

 

반응형