怎么才能让这个程序在不能构成三角形的条件下重新输入三角形的三条边,而不是显示输入错误和面积是零呀?

[复制链接]
查看11 | 回复3 | 2013-3-22 15:12:19 | 显示全部楼层 |阅读模式
void input(int& a,int& b,int& c){
cout > a >> b >> c;
while ((a+b)> a >> b >> c;
}}还有你的计算这个函数也有些问题:double area(int a,int b,int c){
double p,s;
p=(a+b+c)/2.0;
s=sqrt(p*(p-a)*...
回复

使用道具 举报

千问 | 2013-3-22 15:12:19 | 显示全部楼层
改下判断条件呗 1.三边>02.两边之和大于第三遍所以 if ((a+b)<=c||(a+c)<=b||(b+c)<=a||a<=0||b<=0||c<=0)cout<<"不能构成一个三角形!";...
回复

使用道具 举报

千问 | 2013-3-22 15:12:19 | 显示全部楼层
你的判断条件错了,你用的两边之和大于第三边的判定方法,但反过来就应该是两边之和小于等于第三边 if ((a+b)<=c||(a+c)<=b||(b+c)<=a)另外,你最好判定a,b,c都要大于0...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行