• 1013-三角形判断


    描述

    给定三条边的长度,判断能否组成三角形,如果可以,判断三角形的形状。

    输入

     

    一组数据,每行三个实数,在(0,10]之间,精确到小数点后第四位。最后以0 0 0表示结束。

    输出

     

    根据每行的数据判断,如果不能组成三角形,则输出“Not a triangle”;如果是“等腰三角形”,则输出“Isosceles triangle”;如果是“直角三角形”,则输出“Right triangle”;如果是“等腰直角三角形”,则输出“Isosceles right triangle”;如果是“等边三角形”,则输出“Equilateral triangle”;否则,输出“General triangle”。最后输出一行“End”。

    样例输入

    1.4142 1.4142 2

    1.0000 4.0000 5.0000

    0 0 0

    样例输出

    Isosceles right triangle

    Not a triangle End

    #include <iostream>
    #include <math.h>
    using namespace std;
    int main()
    {
        double a,b,c;    
        while(scanf("%lf%lf%lf",&a,&b,&c)==3)
        {
        if(a==0&&b==0&&c==0)
        {
            cout<<"End"<<endl;
            break;
        }
        if((a+b<=c)||(a+c<=b)||(c+b<=a))
            cout<<"Not a triangle"<<endl;
        else if(a==b&&a==c)
            cout<<"Equilateral triangle"<<endl;
        else if((a==b||a==c||b==c)&&(fabs(a*a+b*b-c*c)<0.001||fabs(a*a+c*c-b*b)<0.001||fabs(c*c+b*b-a*a)<0.001))
            cout<<"Isosceles right triangle"<<endl;
        else if(a==b||a==c||b==c)
            cout<<"Isosceles triangle"<<endl;    
        else if(fabs(a*a+b*b-c*c)<0.001||fabs(a*a+c*c-b*b)<0.001||fabs(c*c+b*b-a*a)<0.001)
            cout<<"Right triangle"<<endl;
        else 
            cout<<"General triangle"<<endl;
        }
        return 0;
    } 
    

      

  • 相关阅读:
    若不曾忘记,便不必追忆
    C# 随机生成中文字符串
    C# SQLiteHelper
    C# SQLHelper
    C# Microsoft SQL Server 操作
    C# Excel 操作
    C# XML文件操作(续)
    C# 遍历XML文件,添加,更新,删除节点
    MES系统简介
    SQL Server 存储过程(转)
  • 原文地址:https://www.cnblogs.com/Rosanna/p/3436501.html
Copyright © 2020-2023  润新知