一、实验目的:
1、了解如何定义一个类。
2、了解如何定义类的私有数据成员和成员方法。
3、了解如何使用自定义类实例化对象。
二、实验内容:
定义一个三维向量类,并定义相应的特殊方法实现两个该类对象之间的加、减运算(要求支持运算符+、一),实现该类对象与标量的乘、除运算(要求支持运算符
*、/),以及向量长度的计算(要求使用属性实现)。
- 实验步骤:
- 一、程序代码
-
class MyArray:def __init__(self,x,y,z):self.__x=xself.__y=yself.__z=zdef add(self,a):x=self.__x+a.__xy=self.__y+a.__yz=self.__z+a.__zprint("和=({},{},{})".format(x,y,z))def sub(self,a):x=self.__x-a.__xy=self.__y-a.__yz=self.__z-a.__zprint("差=({},{},{})".format(x, y, z)) def mul(self,a):x=self.__x*ay=self.__y*az=self.__z*aprint("乘积=({},{},{})".format(x, y, z)) def truediv(self,a):x=self.__x/ay=self.__y/az=self.__z/aprint("商=({},{},{})".format(x, y, z))def length(self):a=pow(pow(self.__x,2)+pow(self.__y,2)+pow(self.__z,2),0.5)print("长度为:{}".format(round(a,3)))print('请输入六个数a,b,c,d,e,f:') a,b,c,d,e,f=map(int,input().split()) print('N1:',(a,b,c)) print('N2:',(d,e,f)) n1=MyArray(a,b,c) n2=MyArray(d,e,f) n1.add(n2) n1.sub(n2) n1.mul(2) n1.truediv(2) n1.length()
二、运行结果