-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathlab1.py
46 lines (39 loc) · 1.38 KB
/
lab1.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# 7.11 LAB: Car value (classes)
# Complete the Car class by creating an attribute purchase_price (type int) and the method print_info() that outputs the car's information.
#
# Ex: If the input is:
#
# 2011
# 18000
# 2018
# where 2011 is the car's model year, 18000 is the purchase price, and 2018 is the current year, then print_info() outputs:
#
# Car's information:
# Model year: 2011
# Purchase price: $18000
# Current value: $5770
# Note: print_info() should use two spaces for indentation.
class Car:
def __init__(self):
self.model_year = 0
self.purchase_price = 0
self.current_value = 0
def calc_current_value(self, current_year):
depreciation_rate = 0.15
# Car depreciation formula
car_age = current_year - self.model_year
self.current_value = round(self.purchase_price * (1 - depreciation_rate) ** car_age)
def print_info(self):
print(f"Car's information:")
print(f' Model year: {self.model_year}')
print(f' Purchase price: ${self.purchase_price:.0f}')
print(f' Current value: ${self.current_value:.0f}')
if __name__ == "__main__":
year = int(input())
price = int(input())
current_year = int(input())
my_car = Car()
my_car.model_year = year
my_car.purchase_price = price
my_car.calc_current_value(current_year)
my_car.print_info()