본문 바로가기
프로그래밍/백준 알고리즘 코드

백준 4153번 자바 직각삼각형 [기본수학2]

by 졸린이 2021. 5. 11.
반응형

직각삼각형 문제다.

세 변의 길이를 입력하고 이 삼각형이 직각인지 아닌지 출력해주면 된다.

 

직각삼각형하면 피타고라스짱의 공식을 이용하면 된다.

a^2 + b^2 = c^2

아주 간단하게 짜면

if(a*a + b*b == c*c){
	System.out.println("right");
}

이렇게 하면 끝이다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import java.util.Scanner;
 
public class Main {
    //baekjoon 4153번 직각삼각형 기본수학2
 
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        
        while(true) {
            int ar[] = new int[3];
            
            int tmp;
            for(int i=0; i<3; i++) {
                ar[i] = sc.nextInt();
            }
            if(ar[0== 0 && ar[1== 0 && ar[2== 0)
                break;
            
            for(int i=1; i<3; i++) {
                if(ar[i-1> ar[i]) {
                    tmp = ar[i-1];
                    ar[i-1= ar[i];
                    ar[i] = tmp;
                }
            }
            
            if((ar[0]*ar[0]) + (ar[1]*ar[1]) == (ar[2]*ar[2])){
                System.out.println("right");
            } else
                System.out.println("wrong");
        }
        
    }
}
 
cs

19행에 for문으로 입력한 변수 세개중 가장 큰 값을 배열 마지막으로 보낸다.

 

입력 조건 중 마지막에 빗변을 입력한다는게 없으므로 저렇게 비교해주면서 정렬을 해줘야 한다.

 

반응형

댓글