'''
# 단일 데이터 > 수치형 데이터
# 변수 등장 => 변하는 값, 값을 담는 그릇,...
# 변수명을 어떻게 사용? => 알파벳, 언더바(_), 숫자(두번째부터),
# 힘들면 알파벳만 사용해도 무방
# 문장의 끝에는 세미콜론(;)을 생략하자 

# a가 1이란 값을 담고 있다 ( X ) -> Java
# a가 1이란 값을 가르키고(참조) 있다 ( O ) -> Python
# Python의 모든 요소는 객체다!!
# 객체는 메모리상에 주소를 가진다.
# a는 1이란 객체를 가르킬 수 있는 주소값을 가르킨다.
'''
a = 1
print(a)

# 이번엔 a를 이제 다른 걸 가르키게 하자
a = 2
print(a)

# a는 단지 주소가 바뀌었을 뿐이지 사실 다 객체이기 때문에 상관없다!
# ( 주의! )모든지 객체이기 때문에 변수이름 작성할때 잘 쓰자!! 이미 정해진거 쓰면 안됨!
# 변수는 어떤 객체도 다 가르킬 수 있기 때문에 사전에 정의 된 함수명들도 사용이 가능하다.
a = "가나다"
print(a)

b = 1.1
print(b)

a = 1
b = 2
print(a+b)

# 변수의 정체를 알고 싶을때는 type이란 내장함수를 사용하도록 하자
# 1 <class 'int'> : 1은 int형 객체구나
print(a, type(a))

# 기본 연산 중에는 덧셈 연산 뿐만 아니라 다양한 연산 기능도 있음
print(a-b)
print(a*b)
print(a/b) # (주의!) 정수값을 서로 나누었을 때, type이 변경됨!
print(a%b)

print(2**3) # 2의 3제곱
print(7/4)
print(7//4) # 뒤를 버린다. 즉, 몫만 남기자

# 다양한 연산자가 있는데 우선순위는 어떻게 될까?
# 일단 소괄호()를 사용하면 순위를 몰라도 적용 가능함!
print((1+2+3+4)*2)

'''
실습#1
a값은 90, b값은 75, c값은 99 일때, 평균값을 출력하라
'''
a = 90
b = 75
c = 99
print((a+b+c)/3) # ans : 88.0

# 8진수 : 0o12
# 10진수 : 256
# 16진수 : 0xFF => 0~9까지 쓰고, 10부터 15까지 각각 A부터 F로
a = 0xFF
print(a)


# 변수 <-> 상수 ( 상수(Constant)는 파이썬에서 별도로 없다 )
# 상수를 쓸때 편의상 개발자들은 변수명을 다 대문자로 사용함
PI = 3.14