조건문, 반복문

uoah·2023년 1월 7일
0

문제 풀이

목록 보기
2/9
post-thumbnail

🚀 해답은 아래에 있습니다.

✏️ 문제 풀기

1. 변수 x가 10보다 크고 20보다 작을 때 변수 x를 출력하는 조건식을 완성하라.

var x = 15;

// 변수 x가 10보다 크고 20보다 작을 때 변수 x를 출력하는 조건식을 완성하라.
if (...) {
console.log(x);
}

💡 (1) 나의 답

let x = 15;

if(x > 10 && x < 20) {
  console.log(x);
}

2. for문을 사용하여 0부터 10미만의 정수 중에서 짝수만을 작은 수부터 출력하시오.

0
2
4
6
8

💡 (2) 나의 답

for (i = 0; i < 10; i++){
  if(i%2 === 0) {
    console.log(i);
  }
}

3. for문을 사용하여 0부터 10미만의 정수 중에서 짝수만을 작은 수부터 문자열로 출력하시오.

02468

💡 (3) 나의 답

let str = "";

for(let i = 0; i < 10; i++){
  if(i%2 === 0) {
   str += i;
  }
 console.log(str);
}
/*
"0"
"0"
"02"
"02"
"024"
"024"
"0246"
"0246"
"02468"
"02468"
*/

❌ 문제 발생
console.log(str) 을 for 문 안에 잘못 넣어 콘솔도 반복되는 문제 발생 🥹
for 문 밖으로 console.log(str); 코드를 입력해야 된다.


4. for문을 사용하여 0부터 10미만의 정수 중에서 홀수만을 큰수부터 출력하시오.

9
7
5
3
1

💡 (4) 나의 답

for (i = 9; i > 0; i--){
  if(i%2) {
    console.log(i);
  } 
}

5. while문을 사용하여 0 부터 10 미만의 정수 중에서 짝수만을 작은 수부터 출력하시오.

0
2
4
6
8

💡 (5) 나의 답

let i = 0;

while(i < 10) {
  if (i%2 === 0){
    console.log(i);
  }
  i++;
}

6. while문을 사용하여 0 부터 10 미만의 정수 중에서 홀수만을 큰수부터 출력하시오.

9
7
5
3
1

💡 (6) 나의 답

let i = 9;

while (i >0) {
  if(i%2){
    console.log(i);
  }
  i--;
}

✔️ 7. for 문을 사용하여 0부터 10미만의 정수의 합을 출력하시오.

45

💡 (7) 나의 답

let add = 0;
for (i = 0; i < 10; i++){
  add += i;
}
console.log(add);

✔️ 8. 1부터 20 미만의 정수 중에서 2 또는 3의 배수가 아닌 수의 총합을 구하시오.

73

💡 (8) 나의 답

let str = 0;
for (i = 0; i < 20; i++){
  if (i%2 !=0 && i%3 != 0) {
    str += i;
  }
}

console.log(str);

9. 1부터 20 미만의 정수 중에서 2 또는 3의 배수인 수의 총합을 구하시오.

117

💡 (9) 나의 답

let str = 0;
for (i = 0; i < 20; i++){
  if(i%2 === 0 || i%3 === 0) {
    console.log(i);
    str += i;
  }
}

console.log(str);for (i = 1; i <= 6; i++){
  if(i + i === 6) {
    console.log(i);
  }
}

✔️ 10. 두 개의 주사위를 던졌을 때, 눈의 합이 6이 되는 모든 경우의 수를 출력하시오.

[ 1, 5 ]

[ 2, 4 ]

[ 3, 3 ]

[ 4, 2 ]

[ 5, 1 ]

💡 (10) 나의 답

for (i = 1; i <= 6; i++){
  if(i + i === 6) {
    console.log(i); // 3
  }
}

❌ 문제 발생
덜렁 3만 나오는 불상사 발생. 🤦‍♂️


11. 삼각형 출력하기 - pattern 1

// 높이(line)가 5
*
**
***
****
*****

💡 (11) 나의 답

for (let star = 1; star <= 5; star++){
  console.log('*'.repeat(star));
}

reapeat()
repeat() 메서드는 문자열을 주어진 횟수만큼 반복해 붙인 새로운 문자열을 반환한다.

또는

for (let i = 0; i < 5; i++){
  let star = '';
  for (let j = 0; j <= i; j++){
    star += '*';
  }
  console.log(star);
}

12. 삼각형 출력하기 - pattern 2

*****
 ****
  ***
   **
    *

💡 (12) 나의 답

for (let i = 0; i < 5; i++){
  let star = '';
  for (let j = 0; j < i; j++){
    star += ' ';
  }
  for (let k = 5; k > i; k--){
    star += '*';
  }
  console.log(star);
}

13. 삼각형 출력하기 - pattern 3

*****
****
***
**
*

💡 (13) 나의 답

for (let star = 5; star > 0; star--){
  console.log('*'.repeat(star));
}

또는

for (let i = 0; i < 5; i++){
  let star = '';
  for (let j = 5; j > i; j--){
    star += '*';
  }
  console.log(star);
}

14. 삼각형 출력하기 - pattern 4

    *
   **
  ***
 ****
*****

💡 (14) 나의 답

for (let i = 0; i < 5; i++){
  let star = '';
  for (let j = 5; j > i; j--){
    star += ' ';
  }
  for (let k = 0; k <= i; k++){
    star += '*';
  }
  console.log(star);
}

15. 정삼각형 출력하기

    *
   ***
  *****
 *******
*********

💡 (15) 나의 답


16. 역정삼각형 출력하기

*********
 *******
  *****
   ***
    *

💡 (16) 나의 답


17. 다이아몬드 출력하기

    *
   ***
  *****
 *******
*********
 *******
  *****
   ***
    *

💡 (17) 나의 답


18. 별찍기 심화

**********
****  ****
***    ***
**      **
*        *

💡 (18) 나의 답


📝 해답

✅ (1) 해답

var x = 15;

if ( 10 < x && x < 20) console.log(x);

✅ (2) 해답

for ( let i = 0; i < 10; i++) {
  if( i % 2 === 0) console.log(i);
}

✅ (3) 해답

var evenStr = '';
for ( let i = 0; i < 10; i++) {
  if ( i % 2 === 0) evenStr += i;
}
console.log(evenStr);

✅ (4) 해답

for ( let i = 10; i > 0; i--) {
  if ( i % 2) console.log(i);
}

✅ (5) 해답

var even = 0;
while(even < 10) {
  if( even % 2 === 0) console.log(even);
  even++;
}

✅ (6) 해답

var odd = 10;
while(odd > 0) {
  if ( odd % 2) console.log(odd);
  odd--;
}

✅ (7) 해답

var sum = 0;
for ( let i = 0; i < 10; i++) {
  sum += i;
}
console.log(sum);

✅ (8) 해답

var sum = 0;
for( let i = 0; i < 20; i++) {
  if ( i % 2 && i % 3) sum += i;
}
console.log(sum);

또는

var sum = 0;
for( let i = 0; i < 20; i++) {
  if ( i % 2 !== 0 && i % 3 !== 0) sum += i;
}
console.log(sum);

✅ (9) 해답

var sum = 0;
for ( let i = 0; i < 20; i++) {
  if ( i % 2 ===0 || i % 3 === 0) {
    sum += i;
  }
}
console.log(sum);

또는

var sum = 0;
for ( let i = 0; i < 20; i++) {
  if ( !(i % 2) || !(i % 3)) {
    sum += i;
  }
}
console.log(sum);

✅ (10) 해답

for ( let i = 1; i <= 6; i++) {
  for ( let j = 1; j <= 6; j++) {
    if ( i + j === 6) console.log(`[${i}, ${j}]`); 
  }
}

✅ (11) 해답

for ( let i = 0; i < 5; i++) {
  var triangle = '';
  for ( let j = 0; j <= i; j++) {
    triangle += '*';
  }
  console.log(triangle);
}

✅ (12) 해답

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) 해답

for ( let i = 0; i < 5; i++) {
  var triangle = '';
  for ( let j = 5; j > i; j--) {
    triangle += '*';
  }
  console.log(triangle);
}

✅ (14) 해답

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) 해답

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) 해답

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);
}

✅ (17) 해답

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);
}

✅ (18) 해답

for(var i=0; i<5; i++){
  var triangle = "";
  for(var j=0; j<5; j++){
    if(j<5-i){
      triangle = triangle+"*";
    }
    else{
      triangle = triangle+" ";
    }
  }
  for(var j=0; j<5; j++){
    if(j>=i){
      triangle = triangle+"*";
    }
    else{
      triangle = triangle+" ";
    }
  }
  console.log(triangle);
}

0개의 댓글

관련 채용 정보