zoukankan      html  css  js  c++  java
  • 习题3-5 三角形判断 (15 分)

    习题3-5 三角形判断 (15 分)

    输入在一行中顺序给出六个[-100,100]范围内的数字,即三个点的坐标x1​​、y1​​、x2​​、y2​​、x3​​、y3​​。

    输出格式:

    若这3个点不能构成三角形,则在一行中输出“Impossible”;若可以,则在一行中输出该三角形的周长和面积,格式为“L = 周长, A = 面积”,输出到小数点后2位。

    输入样例1:

    4 5 6 9 7 8
     

    输出样例1:

    L = 10.13, A = 3.00
     

    输入样例2:

    4 6 8 12 12 18
     

    输出样例2:

    Impossible



    #include <stdio.h>
    #include <math.h>
    int main(){
        
        double x1,x2,x3,y1,y2,y3,y;
        double l1,l2,l3,L,A,p;
        scanf("%lf %lf %lf %lf %lf %lf",&x1,&y1,&x2,&y2,&x3,&y3);
        y=(y2-y1)/(x2-x1)*(x3-x1)+y1;
        l1=sqrt(pow((x1-x2),2)+pow((y1-y2),2));
        l2=sqrt(pow((x2-x3),2)+pow((y2-y3),2));
        l3=sqrt(pow((x1-x3),2)+pow((y1-y3),2));
        if (y3==y){
            printf("Impossible
    ");
        }else {
            if((l1+l2)>l3&&(l2+l3)>l1&&(l1+l3)>l2){
                L=l1+l2+l3;
                p=(l1+l2+l3)/2;
                A=sqrt(p*(p-l1)*(p-l2)*(p-l3));
                printf("L = %.2lf, A = %.2lf",L,A);    
        }
        else{
            printf("Impossible
    ");
        }
            
        }
        
        
        return 0;
    } 
     
  • 相关阅读:
    kvm基本原理
    RAID分类
    监控MySQL主从脚本
    MySQL优化
    查看某个ip地址接在交换机的哪个接口
    rsync+inotify脚本
    docker工作流程
    雅礼集训【Day6-1】字符串
    【模拟试题】困难重重
    Loj #6069. 「2017 山东一轮集训 Day4」塔
  • 原文地址:https://www.cnblogs.com/xxl-h/p/14682825.html
Copyright © 2011-2022 走看看