构建一个类Point,它提供两个公有的构造函数,一个没有参数的Point构造函数和一个有两个double参数的构造函数。另外在该类中提供一个静态方法计算两个点的直线距离,传入参数为两个Point类实例。然后设计一个测试类来对Point类进行使用。
提示:先定义两个变量来存储Point点的X,Y坐标;无参的构造函数将X,Y坐标赋为0;有参的构造函数将传入的参数分别赋给X,Y坐标。
以下是我的代码:
using System;
using System.Collections.Generic;
using System.Text;
namespace Point
{
class Point
{
public double X;
public double Y;
public Point()
{
X = 0;
Y = 0;
}
public Point(double x, double y)
{
X = x;
Y = y;
}
public static double distance(Point X, Point Y)
{
return (X.X - Y.X) * (X.X - Y.X) - (X.Y - X.Y) * (X.Y - X.Y);
}
public static void Main(string[] args)
{
double x, y;
x = double.Parse(Console.ReadLine());
y = double.Parse(Console.ReadLine());
Point Point = new Point(x,y);
double m = Point.distance(Point.X,Point.Y);
Console.WriteLine(m);
}
}
}
问题:题目中的“另外在该类中提供一个静态方法计算两个点的直线距离,传入参数为两个Point类实例。然后设计一个测试类来对Point类进行使用。”该如何实现?
思路模糊,而且代码中有错误,该如何修改?请指点,谢谢~~
C#编程和代码问题?
答案:1 悬赏:10 手机版
解决时间 2021-06-04 07:21
- 提问者网友:沉默菋噵
- 2021-06-03 10:07
最佳答案
- 五星知识达人网友:往事隔山水
- 2021-06-03 11:18
你的Point类没有问题~只是测试函数里调用出了点问题。。
因为题目要求另外设计一个测试类来对该类进行使用,这里把main函数放到新的类Test中,代码如下:
class Test
{
public static void Main(string[] args)
{
double x, y;
// 读入一个点
x = double.Parse(Console.ReadLine());
y = double.Parse(Console.ReadLine());
Point a = new Point(x, y);
// 创建一个在原点的点
Point b = new Point();
// 计算两点距离并输出
double m = Point.distance(a, b);
Console.WriteLine(m);
}
}
你的distance传入的参数是(Point X, Point Y) ,所以应该是两个Point类型。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯