43 lines
765 B
Python
43 lines
765 B
Python
from dataclasses import dataclass
|
|
from typing import Optional
|
|
|
|
MEASUREMENTS = (
|
|
199,
|
|
200,
|
|
208,
|
|
210,
|
|
200,
|
|
207,
|
|
240,
|
|
269,
|
|
260,
|
|
263,
|
|
)
|
|
|
|
|
|
@dataclass
|
|
class Sonar:
|
|
last: Optional[int] = None
|
|
|
|
def calc_measurement(self, new_measurement: int):
|
|
if self.last is None:
|
|
direction = 'N/A no previous measurement'
|
|
else:
|
|
if self.last < new_measurement:
|
|
direction = 'increased'
|
|
else:
|
|
direction = 'decreased'
|
|
|
|
print(f'{new_measurement}: {direction}')
|
|
self.last = new_measurement
|
|
|
|
|
|
def main():
|
|
sonar = Sonar()
|
|
for measurement in MEASUREMENTS:
|
|
sonar.calc_measurement(measurement)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
main()
|