[初级职称]ERP向左,会计向右

== 操作符和 equals()的区别

  返回  

矩形面积交

2021/8/21 20:35:14 浏览:

#include<iostream>
#include<iomanip>
using namespace std;

double min(double p,double q){
    if(p<=q) return p;
    else return q;
}
double max(double p,double q){
    if(p>=q) return p;
    else return q;
}
int main(){
    double x1,x2,x3,x4,y1,y2,y3,y4;
    cin>>x1>>y1>>x2>>y2>>x3>>y3>>x4>>y4;//输入4个点(可能是正对角线也可能是反对角线) 
    double a1,b1,a2,b2;
//    min(x1,x2)   左下角 
//    min(y1,y2)
//    max(x1,x2)   右上角 
//    max(y1,y2)
//    min(x3,x4)   左下角 
//    min(y3,y4)
//    max(x3,x4)   右上角 
//    max(y3,y4)
    a1=max(min(x1,x2),min(x3,x4));
    b1=max(min(y1,y2),min(y3,y4));
    a2=min(max(x1,x2),max(x3,x4));
    b2=min(max(y1,y2),max(y3,y4));
    double area;
    area=(a2-a1)*(b2-b1);
    if((a1<a2)&&(b1<b2)){
        cout<<fixed<<setprecision(2)<<area;
    }
    else{
        cout<<"0.00";
    }
    return 0;
    
}

联系我们

如果您对我们的服务有兴趣,请及时和我们联系!

服务热线:18288888888
座机:18288888888
传真:
邮箱:888888@qq.com
地址:郑州市文化路红专路93号