import math
class DataPoint:
def __init__(self, Datum, Error, Operator):
self.Datum = Datum
self.Error = Error
self.Operator = Operator
def ReturnDatum(self):
return self.Datum
def ReturnError(self):
return self.Error
def ReturnOperator(self):
return self.Operator
def __add__(self, other):
return DataPoint(self.Datum + other.Datum, math.sqrt(self.Error * self.Error + other.Error * other.Error), 'NULL')
Obj1 = DataPoint(3.4, 0.12, '+')
Obj2 = DataPoint(123.1, 3.56, '/')
Obj3 = Obj1 + Obj2
aW1wb3J0IG1hdGgKY2xhc3MgRGF0YVBvaW50OgogIGRlZiBfX2luaXRfXyhzZWxmLCBEYXR1bSwgRXJyb3IsIE9wZXJhdG9yKToKICAgIHNlbGYuRGF0dW0gICAgPSBEYXR1bQogICAgc2VsZi5FcnJvciAgICA9IEVycm9yCiAgICBzZWxmLk9wZXJhdG9yID0gT3BlcmF0b3IKICBkZWYgUmV0dXJuRGF0dW0oc2VsZik6CiAgICByZXR1cm4gc2VsZi5EYXR1bQogIGRlZiBSZXR1cm5FcnJvcihzZWxmKToKICAgIHJldHVybiBzZWxmLkVycm9yCiAgZGVmIFJldHVybk9wZXJhdG9yKHNlbGYpOgogICAgcmV0dXJuIHNlbGYuT3BlcmF0b3IKICBkZWYgX19hZGRfXyhzZWxmLCBvdGhlcik6CiAgICByZXR1cm4gRGF0YVBvaW50KHNlbGYuRGF0dW0gKyBvdGhlci5EYXR1bSwgbWF0aC5zcXJ0KHNlbGYuRXJyb3IgKiBzZWxmLkVycm9yICsgb3RoZXIuRXJyb3IgKiBvdGhlci5FcnJvciksICdOVUxMJykKICAgIApPYmoxID0gRGF0YVBvaW50KDMuNCwgMC4xMiwgJysnKQpPYmoyID0gRGF0YVBvaW50KDEyMy4xLCAzLjU2LCAnLycpCk9iajMgPSBPYmoxICsgT2JqMg==