Java—相似三角形

Java—相似三角形

Description
给出两个三角形的三条边,判断是否相似。

Input
多组数据,给出6正个整数,a1,b1,c1,a2,b2,c2,分别代表两个三角形。(边长小于100且无序)

Output
如果相似输出YES,如果不相似输出NO,如果三边组不成三角形**(两条短边之和大于第三边)**也输出NO。

Sample
Input
1 2 3 2 4 6
3 4 5 6 8 10
3 4 5 7 8 10
Output
NO
YES
NO
Hint
输入的六个数据只是两个三角形的三条边,需要将前三个数排序(即第一个三角形的三条边),同理再将后三个数排序,为的是便于比较两个三角形三条有序长度的比例数,如果比例数一样就是相似三角形(前提三条边能够构成三角形)。

import java.util.Scanner;

class Point
{
	int a,b,c;
	Point(int a,int b,int c)
	{
		this.a=a;
		this.b=b;
		this.c=c;
	}
	void Sum(Point p)
	{
		double x=a*1.0/p.a;
		double y=b*1.0/p.b;
		double z=c*1.0/p.c;
		if(b+c>a)
		{
			if(x==y&&y==z)
				System.out.println("YES");
			else
				System.out.println("NO");
		}
		else
			System.out.println("NO");
	}
}
public class Main {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner reader=new Scanner(System.in);
		int a1,b1,c1,a2,b2,c2;
		int temp;
		while(reader.hasNext())
		{
			a1=reader.nextInt();
			b1=reader.nextInt();
			c1=reader.nextInt();
			a2=reader.nextInt();
			b2=reader.nextInt();
			c2=reader.nextInt();
			if(a1<b1)
			{
				temp=a1;
				a1=b1;
				b1=temp;
			}
			if(a1<c1)
			{
				temp=a1;
				a1=c1;
				c1=temp;
			}
			if(b1<c1)
			{
				temp=b1;
				b1=c1;
				c1=temp;
			}
			if(a2<b2)
			{
				temp=a2;
				a2=b2;
				b2=temp;
			}
			if(a2<c2)
			{
				temp=a2;
				a2=c2;
				c2=temp;
			}
			if(b2<c2)
			{
				temp=b2;
				b2=c2;
				c2=temp;
			}
			Point point1 =new Point(a1,b1,c1);
			Point point2 =new Point(a2,b2,c2);
			point2.Sum(point1);
		}
		
	}

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值