1부터 N까지의 합

2022. 2. 7. 22:49Web/Javascript 알고리즘

1부터 N까지 합을 구하는 알고리즘을 작성해보았다. 내 생각에는 올바른 정답이라고 생각했는데 콘솔에서 결과값이 0이 나오는 현상이 계속 발생했다. 

 

내 코드 

<!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>
            var input=prompt('자연수 하나를 입력하세요'); 
            var sum=0;
            document.write(input);

            if(input<=20){
                for(var i=0;i<input.length;i++){
                    sum+=i;
                    
                } 
            console.log(sum);
            } 
            else { 
                //console.log("20 이하의 자연수를 입력해주세요!"); 
            }
                       
    </script> 

</body>
</html>

 

정답 코드 

<!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(n) {
            let answer=0;
            for(let i=1;i<=n;i++){
                answer=answer+i; 
            }

            return answer;
        }
        console.log(solution(6));
    </script> 
</body>
</html>

 

회고

굳이 prompt로 자연수를 입력받지 않고도 console.log에서 테스트 숫자를 넣어서 진행해볼 수 있을 것 같다. 

구글링으로 다른 코드들을 좀 더 참고해보았다. 

<script> 
function sumAll(x){ 
	let output=0;
    for(let i=0;i<=x;i++){
    	output+=i;
 } return output;
 } 
 
 console.log(sumAll(10));
 </script>

 

참고 

https://jieum.tistory.com/7

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

연필 개수 세기  (0) 2022.02.04
삼각형 판별하기  (0) 2022.02.04