import java.util.Scanner;
public class RectangleArea {
public static void main(String[] args) {
Scanner inScanner = new Scanner(System.in);
double Xmin,Hmin,Xmax,Hmax,temp;
double[] area1;
double[] area2;
Xmin =inScanner.nextDouble();
Hmin =inScanner.nextDouble();
temp =inScanner.nextDouble();
if(temp>=Xmin)
{
Xmax=temp;
}else {
Xmax=Xmin;
Xmin=temp;
}
temp =inScanner.nextDouble();
if(temp>=Hmin)
{
Hmax=temp;
}else {
Hmax=Hmin;
Hmin=temp;
}
area1=new double[]{Xmin,Hmin,Xmax,Hmax};
Xmin =inScanner.nextDouble();
Hmin =inScanner.nextDouble();
temp =inScanner.nextDouble();
if(temp>=Xmin)
{
Xmax=temp;
}else {
Xmax=Xmin;
Xmin=temp;
}
temp =inScanner.nextDouble();
if(temp>=Hmin)
{
Hmax=temp;
}else {
Hmax=Hmin;
Hmin=temp;
}
area2=new double[]{Xmin,Hmin,Xmax,Hmax};
double[] area = new double[4];
area[0]=area1[0]>area2[0]?area1[0]:area2[0];
area[1]=area1[1]>area2[1]?area1[1]:area2[1];
area[2]=area1[2]<area2[2]?area1[2]:area2[2];
area[3]=area1[3]<area2[3]?area1[3]:area2[3];
if(area[0]<area[2]&&area[1]<area[3])
{
System.out.println(String.format("%.2f", (area[3]-area[1])*(area[2]-area[0])));
}else {
System.out.println("0.00");
}
}
}
这个输入写法过程繁琐了
可以输入是不用管大小。使用方法的min()在用的时候得到
例如
area[0]=area1[0]>area2[0]?area1[0]:area2[0];
变为:
area[0]=max(min(area[0],area[3]),min(area2[0],area[3]));
可以更简洁和不用繁琐的输入的形式;