当前位置:网站首页>C++学习之路—— C++异常处理机制

C++学习之路—— C++异常处理机制

2021-07-20 03:55:18 流楚丶格念

例题:

1.设计一个程序,根据输入的三边求三角形面积。
2.要求设置异常处理机制,对不符合三角形条件提示错误信息,不做计算;
对输入非正数的边提示错误,并重新输入。

代码如下:

class S
{
public:
	double s;
	S(double x, double y, double z)
	{
		a = x;
		b = y;
		c = z;
	}
	void TryS();
private:
	double a, b, c;
};

void S::TryS()
{
	try
	{
		if (a + b < c || a + c < b || b + c < a)
		{
			throw(a);
		}
		else
		{
			double p = (a + b + c) / 2;
			s = sqrt(p*(p - a)*(p - b)*(p - c));
			cout << "该三角形的面积为" << s << endl;
		}
	}
	catch (double s)
	{
		cout << "输入的值不能构成三角形" << endl;
	}
}
int main()
{
	S s1(4.3, 2.2, 3.6);
	s1.TryS();
	S s2(1.0, 1.0, 3.0);
	s2.TryS();

	return 0;
}

      
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.

版权声明
本文为[流楚丶格念]所创,转载请带上原文链接,感谢
https://blog.51cto.com/u_15265965/2892173

随机推荐