赞
踩
诺诺看到三角形,觉得很好玩。有等边三角形、直角三角形、等腰三角形……她最喜欢等边三角形,认为它是完美的,评价为“Perfect”;而直角三角形评价为“Very Good”,等腰三角形评价为“Good”,其他三角形评价为“Ordinary”。
有多组测试数据。每组测试数据第一行是正整数n(n<=20),表示有n组测试。每组测试输入三个正整数a,b,c(1<=a,b,c<=1000),表示三角形的三条边长,a,b,c之间以一个空格分隔。
对于每组测试数据,在一行上输出诺诺对该三角形的评价;若不是三角形,输出单词“Sorry”。引号不必输出。
- 3
- 3 4 5
- 1 1 1
- 1 2 1
- Very Good
- Perfect
- Sorry
本题有一个容易忽略的点,就是存在一个特殊的等腰三角形即等边三角形,要在等边判断是多注意。
- import java.util.Scanner;
- class triangle{
- int a;
- int b;
- int c;
- public triangle(int a, int b, int c) {
- super();
- this.a = a;
- this.b = b;
- this.c = c;
- }
-
- }
- public class Mian {
- public static void main(String[] args) {
- Scanner sc = new Scanner(System.in);
- int n=sc.nextInt();
- triangle[] abc=new triangle[n];
- for(int i=0;i<n;i++)
- {
- abc[i]=new triangle(sc.nextInt(),sc.nextInt(),sc.nextInt());
-
- }
- for(triangle s:abc) {
- System.out.println(panduan(s));
- }
- sc.close();
-
-
- }
- static String panduan(triangle s)//判断三角形方法
- {
- String fal;
- if(s.a+s.b>s.c&&s.a+s.c>s.b&&s.b+s.c>s.a)
- {
- if((s.a==s.b&&s.a!=s.c)||(s.a==s.c&&s.a!=s.b)||(s.b==s.c&&s.c!=s.a))
- {
- fal="Good";
- }
- else if((s.a*s.a==s.b*s.b+s.c*s.c)||(s.b*s.b==s.a*s.a+s.c*s.c)||(s.c*s.c==s.b*s.b+s.a*s.a))
- {
- fal="Very Good";
- }
- else if(s.a==s.b&&s.b==s.c)
- {
- fal="Perfect";
- }
- else
- {
- fal="Ordinary";
- }
- }
- else
- {
- fal="Sorry";
- }
- return fal;
- }
-
- }

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。