定义一个point1类,表示空间上的点,写出构造函数,再写一个成员函数求该点到原点的距离。再写main里初始化一个点(1,2,3),并输出其到原点的距离。
时间: 2023-09-12 11:05:14 浏览: 151
### 回答1:
class point1:
def __init__(self, x, y, z):
self.x = x
self.y = y
self.z = z
def distance_to_origin(self):
return (self.x ** 2 + self.y ** 2 + self.z ** 2) ** .5
p = point1(1, 2, 3)
print(p.distance_to_origin()) # 输出该点到原点的距离
### 回答2:
point1类的定义如下:
```cpp
class point1 {
private:
float x, y, z; // 点的坐标
public:
point1(float x, float y, float z); // 构造函数
float distanceToOrigin(); // 求该点到原点的距离
};
point1::point1(float x, float y, float z) {
this->x = x;
this->y = y;
this->z = z;
}
float point1::distanceToOrigin() {
return sqrt(x*x + y*y + z*z);
}
```
在main函数中初始化一个点(1,2,3)并输出其到原点的距离的实现如下:
```cpp
#include<iostream>
#include<cmath>
class point1 {
private:
float x, y, z; // 点的坐标
public:
point1(float x, float y, float z); // 构造函数
float distanceToOrigin(); // 求该点到原点的距离
};
point1::point1(float x, float y, float z) {
this->x = x;
this->y = y;
this->z = z;
}
float point1::distanceToOrigin() {
return sqrt(x*x + y*y + z*z);
}
int main() {
point1 p(1, 2, 3);
float distance = p.distanceToOrigin();
std::cout << "到原点的距离为:" << distance << std::endl;
return 0;
}
```
运行上述代码,输出结果为:
```
到原点的距离为:3.74166
```
### 回答3:
定义一个point1类,表示空间上的点,写出构造函数,再写一个成员函数求该点到原点的距离。再写main里初始化一个点(1,2,3),并输出其到原点的距离。
```python
class Point1:
def __init__(self, x, y, z):
self.x = x
self.y = y
self.z = z
def distance_to_origin(self):
distance = (self.x ** 2 + self.y ** 2 + self.z ** 2) ** 0.5
return distance
def main():
point = Point1(1, 2, 3)
distance = point.distance_to_origin()
print("该点到原点的距离为:", distance)
if __name__ == "__main__":
main()
```
输出结果:
该点到原点的距离为: 3.7416573867739413
解释:
定义了一个Point1类,构造函数`__init__`接收x、y、z三个参数,分别初始化点的x、y、z坐标。成员函数`distance_to_origin`计算点到原点(0, 0, 0)的距离,使用欧几里得距离公式计算。在main函数中,初始化一个Point1对象point,并调用其distance_to_origin函数计算到原点的距离,最后打印输出结果。
阅读全文