삼각형 판별하기

2022. 2. 4. 22:33Web/Javascript 알고리즘

'삼각형 판별하기' 알고리즘 문제를 풀었다. 그런데 내가 너무 쉽다고 간과한 것 같다. 

내가 간과했던 부분은 아래와 같다.

1. 삼각형의 세 변 중에서 밑 변이 제일 길고, 나머지 짧은 두 변의 합이 제일 긴 밑변 보다 길어야 한다. 

2. <script> 코드 내에 함수를 사용하지 않았다. 그저 무턱대고 html 코드 내에 script 추가하지도 않고 var 부터 시작하는 오류를 범했다. 

 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>

    function solution(a,b,c) {
        var answer,max; //1. 가장 긴 막대 길이를 구해야 한다
        var sum=a+b+c;

        if(a>b) max=a; 
        else max=b;
        if(c>max) max=c; 

        //2. 짧은 막대 길이의 합을 구한다. 긴 변보다 두 짧은 변의 합이 커야 한다
        if((sum-max)>max){
            console.log("YES");
        } else {
            console.log("NO");
        }

        return answer; 
    }
        console.log(solution(3,7,11))
    </script>
</body>
</html>

밑에 console.log가 세 변 길이를 테스트 해 볼 수 있는 코드다. 

3,7,11의 경우 11인 c가 max값이 되었다. 

그래서 3+7<11 이므로 가장 긴 변인 c가 a+b를 합한 것보다 크므로 NO가 나온다. 

 

테스트 코드를 6,7,11로 바꿔보면 a+b>c 이므로 크롬 콘솔창에 F12가 출력된다. 

 

이번 코드는 변수를 var을 사용해봤는데, 앞으로 다양한 변수들을 사용해봐야 겠다는 생각이 들었다. 

 

참고) 자바스크립트 변수 var,let,const 차이점 

https://heinafantasy.com/153

'Web > Javascript 알고리즘' 카테고리의 다른 글

1부터 N까지의 합  (0) 2022.02.07
연필 개수 세기  (0) 2022.02.04