for ( let i = 0; i < 10; i++) { if( i % 2 === 0) console.log(i); }
3. for문을 사용하여 0부터 10미만의 정수 중에서 짝수만을 작은 수부터 문자열로 출력하시오.
1 2 3 4 5
var evenStr = ''; for ( let i = 0; i < 10; i++) { if ( i % 2 === 0) evenStr += i; } console.log(evenStr);
이 문제는 이렇게 작성할 수도 있다.
1 2 3 4 5
var evenStr = ''; for ( let i = 0; i < 10; i+=2) { evenStr += i; } console.log(evenStr);
그런데, 이런 방법은 다른 사람이 봤을 때 혼란스러울 수 있다. 코드는 항상 읽기 쉽게 써져야 한다. 되도록이면 let i = 0과 i++는 변형시키지 말고 그대로 사용하도록 노력하자.
4. for문을 사용하여 0부터 10미만의 정수 중에서 홀수만을 큰수부터 출력하시오.
1 2 3
for ( let i = 10; i > 0; i--) { if ( i % 2) console.log(i); }
5. while문을 사용하여 0 부터 10 미만의 정수 중에서 짝수만을 작은 수부터 출력하시오.
1 2 3 4 5
var even = 0; while(even < 10) { if( even % 2 === 0) console.log(even); even++; }
6. while문을 사용하여 0 부터 10 미만의 정수 중에서 홀수만을 큰수부터 출력하시오.
1 2 3 4 5
var odd = 10; while(odd > 0) { if ( odd % 2) console.log(odd); odd--; }
7. for 문을 사용하여 0부터 10미만의 정수의 합을 출력하시오.
1 2 3 4 5
var sum = 0; for ( let i = 0; i < 10; i++) { sum += i; } console.log(sum);
8. 1부터 20 미만의 정수 중에서 2 또는 3의 배수가 아닌 수의 총합을 구하시오.
1 2 3 4 5
var sum = 0; for( let i = 0; i < 20; i++) { if ( i % 2 && i % 3) sum += i; } console.log(sum);
혹은
1 2 3 4 5
var sum = 0; for( let i = 0; i < 20; i++) { if ( i % 2 !== 0 && i % 3 !== 0) sum += i; } console.log(sum);
9. 1부터 20 미만의 정수 중에서 2 또는 3의 배수인 수의 총합을 구하시오.
1 2 3 4 5 6 7
var sum = 0; for ( let i = 0; i < 20; i++) { if ( i % 2 ===0 || i % 3 === 0) { sum += i; } } console.log(sum);
또는
1 2 3 4 5 6 7
var sum = 0; for ( let i = 0; i < 20; i++) { if ( !(i % 2) || !(i % 3)) { sum += i; } } console.log(sum);
10. 두 개의 주사위를 던졌을 때, 눈의 합이 6이 되는 모든 경우의 수를 출력하시오.
1 2 3 4 5
for ( let i = 1; i <= 6; i++) { for ( let j = 1; j <= 6; j++) { if ( i + j === 6) console.log(`[${i}, ${j}]`); } }
11. 삼각형 출력하기 - pattern 1
1 2 3 4 5 6 7
for ( let i = 0; i < 5; i++) { var triangle = ''; for ( let j = 0; j <= i; j++) { triangle += '*'; } console.log(triangle); }
12. 삼각형 출력하기 - pattern 2
1 2 3 4 5 6 7 8 9 10
for ( let i = 0; i < 5; i++) { var triangle = ''; for ( let j = 0; j < i; j++) { triangle += ' '; } for ( let k = 5; k > i; k--) { triangle += '*'; } console.log(triangle); }
13. 삼각형 출력하기 - pattern 3
1 2 3 4 5 6 7
for ( let i = 0; i < 5; i++) { var triangle = ''; for ( let j = 5; j > i; j--) { triangle += '*'; } console.log(triangle); }
14. 삼각형 출력하기 - pattern 4
1 2 3 4 5 6 7 8 9 10
for ( let i = 0; i < 5; i++) { var triangle = ''; for ( let j = 1; j < 5-i; j++) { triangle += ' '; } for ( let k = 0; k <= i; k++) { triangle += '*'; } console.log(triangle); }
15. 정삼각형 출력하기
1 2 3 4 5 6 7 8 9 10
for ( let i = 0; i < 5; i++) { var triangle = ''; for ( let j = 5; j > i+1; j--) { triangle += ' '; } for ( let k = 0; k < 2*i+1; k++) { triangle += '*'; } console.log(triangle); }
16. 역정삼각형 출력하기
1 2 3 4 5 6 7 8 9 10
for ( let i = 0; i < 5; i++) { var triangle = ''; for ( let j = 0; j < i; j++) { triangle += ' '; } for ( let k = 9; k >= 2*i+1; k--) { triangle += '*'; } console.log(triangle); }
for ( let i = 0; i < 5; i++) { var triangle = ''; for ( let j = 5; j > i+1; j--) { triangle += ' '; } for ( let k = 0; k < 2*i+1; k++) { triangle += '*'; } console.log(triangle); } for ( let i = 0; i < 4; i++) { var triangle = ''; for ( let j = 0; j <= i; j++) { triangle += ' '; } for ( let k = 7; k >= 2*i+1; k--) { triangle += '*'; } console.log(triangle); }