用c#语言: 1) 设计出point类(点类) 2) 设计出triangle类,至少包括其构造方法

用c#语言:1)设计出point类(点类)2)设计出triangle类,至少包括其构造方法,获取面积和周长的方法。3)通过输入三点坐标的方法来确定一个三角形,并输出三角形... 用c#语言:
1) 设计出point类(点类)
2) 设计出triangle类,至少包括其构造方法,获取面积和周长的方法。
3) 通过输入三点坐标的方法来确定一个三角形,并输出三角形的面积和周长等内容。
4) 自定义异常类,使用try-catch处理异常。
展开
 我来答
  • 你的回答被采纳后将获得:
  • 系统奖励15(财富值+成长值)+难题奖励20(财富值+成长值)
匿名用户
2014-11-27
展开全部
public partial class Form1 : Form
{
public class point
{
private double x;
private double y;
public double Y
{
get { return y; }
set { y = value; }
}
public double X
{
get { return x; }
set { x = value; }
}
}
public class triangle
{
public triangle()
{ }
/// <summary>
/// 周长
/// </summary>
/// <param name="p1"></param>
/// <param name="p2"></param>
/// <param name="p3"></param>
/// <returns></returns>
public double getPerimeter(point p1, point p2, point p3)
{
if ((p1.X == p2.X && p2.X == p3.X && p1.X == p3.X) || (p1.Y == p2.Y && p2.Y == p3.Y && p1.Y == p3.Y))
{
return 0;
}
else
{
double len1 = Math.Sqrt(Math.Pow((p1.X - p2.X), 2) + Math.Pow((p1.Y - p2.Y), 2));
double len2 = Math.Sqrt(Math.Pow((p2.X - p3.X), 2) + Math.Pow((p2.Y - p3.Y), 2));
double len3 = Math.Sqrt(Math.Pow((p3.X - p1.X), 2) + Math.Pow((p3.Y - p1.Y), 2));
return len1 + len2 + len3;
}
}
/// <summary>
/// 面积
/// </summary>
/// <param name="p1"></param>
/// <param name="p2"></param>
/// <param name="p3"></param>
/// <returns></returns>
public double getArea(point p1, point p2, point p3)
{
if ((p1.X == p2.X && p2.X == p3.X && p1.X == p3.X) || (p1.Y == p2.Y && p2.Y == p3.Y && p1.Y == p3.Y))
{
return 0;
}
else
{
double len1 = Math.Sqrt(Math.Pow((p1.X - p2.X), 2) + Math.Pow((p1.Y - p2.Y), 2));
double len2 = Math.Sqrt(Math.Pow((p2.X - p3.X), 2) + Math.Pow((p2.Y - p3.Y), 2));
double len3 = Math.Sqrt(Math.Pow((p3.X - p1.X), 2) + Math.Pow((p3.Y - p1.Y), 2));
double P = (len1 + len2 + len3) / 2.0;
return Math.Sqrt(P * (P - len1) * (P - len2) * (P - len3));
}
}
}
public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
point point1 = new point();
point1.X = double.Parse(this.X1.Text);
point1.Y = double.Parse(this.Y1.Text);

point point2 = new point();
point2.X = double.Parse(this.X2.Text);
point2.Y = double.Parse(this.Y2.Text);

point point3 = new point();
point3.X = double.Parse(this.X3.Text);
point3.Y = double.Parse(this.Y3.Text);
triangle triangle = new triangle();
MessageBox.Show(string.Format("周长为[{0}],面积为[{1}]", triangle.getPerimeter(point1, point2, point3), triangle.getArea(point1, point2, point3)));
}

}
异常自己改改
追问
有一个错误,方法必须具有返回值类型
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式