코딩일지/내일배움캠프 과제
20220913 클래스 활용해보기
야언
2022. 9. 13. 15:32
1. 도형 넓이 계산기
num1 = int(input('첫 번째 숫자를 입력 : '))
num2 = int(input('두 번째 숫자를 입력 : '))
class calc_area:
def __init__(self, num1, num2):
self.num1 = num1
self.num2 = num2
def square(self):
result = self.num1 * self.num2
return result
def triangle(self):
result = self.num1 * self.num2 / 2
return result
def circle(self):
result = (self.num1 / 2) **2 * 3.14 # 첫번째 숫자를 원의 지름(2r)으로, 𝝿r²
return result
area = calc_area(num1, num2)
print(area.square()) # 사각형의 넓이
print(area.triangle()) # 삼각형의 넓이
print(area.circle()) # 원의 넓이
2. 계산기 만들어보기
num1 = int(input('첫 번째 숫자를 입력 : '))
num2 = int(input('두 번째 숫자를 입력 : '))
class Calc:
def __init__(self, num1, num2):
self.num1 = num1
self.num2 = num2
def plus(self):
result = self.num1 + self.num2
return result
def minus(self):
result = self.num1 - self.num2
return result
def multiple(self):
result = self.num1 * self.num2
return result
def divide(self):
result = self.num1 / self.num2
return result
calc = Calc(num1, num2)
print(calc.plus()) # 더한 값
print(calc.minus()) # 뺀 값
print(calc.multiple()) # 곱한 값
print(calc.divide()) # 나눈 값
3. 프로필 관리 기능 만들어보기
from pprint import pprint
class Profile:
def __init__(self):
self.profile = {
"name": "-",
"gender": "-",
"birthday": "-",
"age": "-",
"phone": "-",
"email": "-",
}
def set_profile(self, profile):
self.profile = profile
def get_name(self):
return self.profile["name"]
def get_gender(self):
return self.profile["gender"]
def get_birthday(self):
return self.profile["birthday"]
def get_age(self):
return self.profile["age"]
def get_phone(self):
return self.profile["phone"]
def get_email(self):
return self.profile["email"]
profile = Profile()
profile.set_profile({
"name": str(input('이름을 입력하세요 : ')),
"gender": str(input('성별을 입력하세요 : ')),
"birthday": str(input('생일을 입력하세요 : ')),
"age": int(input('나이을 입력하세요 : ')),
"phone": str(input('핸드폰 번호를 입력하세요 : ')),
"email": str(input('email 주소를 입력하세요 : ')),
})
pprint(profile.get_name()) # 이름 출력
pprint(profile.get_gender()) # 성별 출력
pprint(profile.get_birthday()) # 생일 출력
pprint(profile.get_age()) # 나이 출력
pprint(profile.get_phone()) # 핸드폰번호 출력
pprint(profile.get_email()) # 이메일 출력
일단 이해한대로 써볼 수 있었는데 아직도 어디에 활용되는지는 감이 잘 안잡힌다..
당장 생각하기로는 스타크래프트같은 게임에서의 유닛 관리정도?
ex) 클래스로 마린의 정보를 담은 틀을 만들고 그 틀로 마린 개체들을 뽑아서 따로 관리하는?
흠..