1부터 N까지의 합
2022. 2. 7. 22:49ㆍWeb/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>
참고
'Web > Javascript 알고리즘' 카테고리의 다른 글
연필 개수 세기 (0) | 2022.02.04 |
---|---|
삼각형 판별하기 (0) | 2022.02.04 |