python中怎样定义一个函数来计算两点距离?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python中怎样定义一个函数来计算两点距离?相关的知识,希望对你有一定的参考价值。
我试图写出函数distance的代码但是不知道怎么处理两个dot……
import mathclass Dot:
def __init__(self,x,y,z):
self.x=float(x)
self.y=float(y)
self.z=float(z)
t1=input('请输入点t1的坐标:')
t2=input('请输入点t2的坐标:')
t1=eval('[%s]'%t1)
t2=eval('[%s]'%t2)
T1=Dot(t1[0],t1[1],t1[2])
T2=Dot(t2[0],t2[1],t2[2])
print('点t1:',T1.x,T1.y,T1.z)
print('点t2:',T2.x,T2.y,T2.z)
s=math.sqrt((T1.x-T2.x)*(T1.x-T2.x)-(T1.y-T2.y)*(T1.y-T2.y)+(T1.z-T2.z)*(T1.z-T2.z))
print("两点间的距离为:%s"% s) 参考技术A #导入math包
import math
#定义点的函数
class Point:
x = 0
y = 0
z = 0
def __init__(self, x, y, z):
self.x = x
self.y = y
self.z = z
def getx(self):
return self.x
def gety(self):
return self.y
def getz(self):
return self.z
#定义距离函数
class Getlen:
def __init__(self, p1, p2):
self.x = p1.getx() - p2.getx()
self.y = p1.gety() - p2.gety()
self.z = p1.getz() - p2.getz()
self.len = math.sqrt((self.x)**2 + (self.y)**2 + (self.z)**2)
def getlen(self):
print("两点间的距离为:" , self.len)
p1 = Point(0,0,0)
p2 = Point(1,1,1)
g = Getlen(p1,p2)
g.getlen() 参考技术B ((t1.x-t2.x)^2+(t1.y-t2.y)^2+(t1.z-t2.z)^2)^0.5追问
还有一个小问题,我想要用户输入一个点的数据,但是这个为什么却是错的?正确的应该怎么写呢?
你拿到的是字符串,你把它转化为三个值就好了
[PTA]习题5-3 使用函数计算两点间的距离
[PTA]习题5-3 使用函数计算两点间的距离
本题要求实现一个函数,对给定平面任意两点坐标(x₁,y₁)和(x₂,y₂),求这两点之间的距离。
函数接口定义:
double dist( double x1, double y1, double x2, double y2 );
其中用户传入的参数为平面上两个点的坐标(x1, y1)和(x2, y2),函数dist应返回两点间的距离。
裁判测试程序样例:
#include <stdio.h>
#include <math.h>
double dist( double x1, double y1, double x2, double y2 );
int main()
{
double x1, y1, x2, y2;
scanf("%lf %lf %lf %lf", &x1, &y1, &x2, &y2);
printf("dist = %.2f\\n", dist(x1, y1, x2, y2));
return 0;
}
/* 你的代码将被嵌在这里 */
输入样例:
10 10 200 100
输出样例:
dist = 210.24
- 提交结果:
- 源码:
#include <stdio.h>
#include <math.h>
double dist(double x1, double y1, double x2, double y2);
int main()
{
double x1, y1, x2, y2;
scanf("%lf %lf %lf %lf", &x1, &y1, &x2, &y2);
printf("dist = %.2f\\n", dist(x1, y1, x2, y2));
return 0;
}
/* 你的代码将被嵌在这里 */
double dist(double x1, double y1, double x2, double y2)
{
double distance;
distance = sqrt(pow(x1 - x2, 2) + pow(y1 - y2, 2));
return distance;
}
以上是关于python中怎样定义一个函数来计算两点距离?的主要内容,如果未能解决你的问题,请参考以下文章