先粘代码,空了再来整说明。
区间数的定义参考:
# -*- coding: utf-8 -*-
"""区间数计算.ipynb
Automatically generated by Colaboratory.
Original file is located at
https://colab.research.google.com/drive/1VC_Px3l3pLg4f0RWQF3xz2wWdWM1Jynf
"""
class IntervalNumber:
def __init__(self,a,b):
self.a = a
self.b = b
def __str__(self):
return '[{0},{1}]'.format(self.a,self.b)
def __add__(self,other):
return _add(self,other)
def __sub__(self,other):
return _sub(self,other)
def __mul__(self,other):
return _mul(self,other)
def __truediv__(self,other):
return _truediv(self,other)
def _add(I,J):
result = IntervalNumber(I.a+J.a,I.b+J.b)
return result
def _sub(I,J):
result = IntervalNumber(I.a - J.b, I.b-J.a)
return result
def _mul(I,J):
result = IntervalNumber(I.a*J.a,I.b*J.b)
return result
def _truediv(I,J):
result = IntervalNumber(I.a/J.b, I.b/J.a)
return result
调用方法和结果测试:
I = IntervalNumber(1,3)
J = IntervalNumber(2,5)
print('I+J=',I+J)
print('I-J=',I-J)
print('I*J=',I*J)
print('I/J=',I/J)
运行结果:
I+J= [3,8]
I-J= [-4,1]
I*J= [2,15]
I/J= [0.2,1.5]