Ch.Covelope

Javascript <자바스크립트> 반복문, for문 본문

JavaScript

Javascript <자바스크립트> 반복문, for문

Chrysans 2021. 12. 6. 16:48
728x90
반응형

 

자바스크립트 js 반복문

 

 

반복문에는 여러가지 방법으로 방법 문들이 존재하다.

 

자바스크립트에서 지원하는 반복문

 

  • for 문
  • do...while 문
  • while 문
  • 레이블 문
  • break 문
  • countinue 문
  • for..in 문
  • for...of 문

 

for 문을 활용해서 다양한 값 구해보기.

 

 

 

 

오늘은 많은 반복문들 중에서 for 문을 활용하여 몇 가지 기초적인 실습 예제를 해볼 예정 인다.

 

for 문을 처음 이론으로 들었을 때는 그냥 원하는 걸 반복해서 결괏값을 얻는 아주 쉽게 정의된 느낌이었는데 역시나 실제로 코드로 뭔가 써보니 나한테는 모든 부분들이 생소하고 어려웠던 거 같다.

 

 


 

 

 

100까지의 3의 배수와 5의 배수를 더한 값을 구한다.

let result = 0;

for (let x = 0; x < 101; x++) { // x = 100까지 반복이 되는데 인덱스는 0 부터 시작이다. 100까지가 아닌 100개를 찍으려면 
                                                    // x < 100 으로 하면된다.
  // console.log(x)
  if (x % 3 == 0 || x % 5 == 0) {  //  조건으로 or연산자를 사용해 3의배수와 5와 배수를 가져오고 15의 배수의 중복을 막는다.
    result += x // result = result + x
  }
 
}

console.log(result);

 

for(조건) 조건=  초기문 let x = 0;  조건문 = x < 101 (101 미만까지) 증감 문 = x++ (1씩 증가)

초기문에 x 가 100까지 1씩 증감하는 반복문으로써 해당 조건으로 중괄호 안에 있는 문을 실행한다. x % 3 === 0;  이건 나머지 연산자 % 사용해서 x의 값을 3으로 나눈 나머지가 0 인 값이면 true이다. or 연산자 이기 때문에 3의 배수가 아니고 5의 배수를 만족하면 5의 배수의 값을 true로 친다.

 

그래서 그 값을 result = 0으로 선언 할당한 값에 더해주면 최종 값으로 3과 5의 배수를 더한 값을 알 수 있다.

 

 

 


 

 

 

100까지 짝수의 합을 구해보자. 

let result = 0;

for (let i = 0; i < 101; i += 2){ // 증감연산자를 2씩 증가한다.
    result += i;  // 짝수로 나온 값들을 result에 담는다.
}
console.log(result);

증감 연산자를 += 2로 2씩 증가하게 만들어서 결괏값에 더하고 담아주면 결과는 짝수의 합을 구할 수 있다.

 

 

 


 

 

구구단 만들기

for (let i = 2; i < 10; i++ ){               // 2단부터 시작하게 되고 9단까지 있으므로 10 미만까지 증감되고
    for(let j = 1; j < 10; j++){             //  1부터 9까지 곱해지기 때문에 1부터 시작하고 10 미만가지 증감되고 설정한다.
    console.log(`${i}*${j} = ${i*j}`)
    
  // 리터럴 템플릿 벡틱를 사용해서 ${ i의 값} * ${ j 의값 } = ${ i * j } 결과값을 보여준다.
   }    
}
// 결과값 예시 ) 2*1 = 2 이런식으로 console.log 가 찍히게 된다.

이중 포문으로 구구단 앞에 들어올 수와 뒤에 곱해질 수를 만들어서 콘솔 로그(console.log)로 출력하면 9단까지 구구단 값을 얻을 수 있다.

 

 

 


 

 

 

배열의 최솟값 구하기.

let sample = [10, 20, 30, 5, 6, 3, 100, 110, 99, 98];
let temp = sample[0] // temp 변수에 sample 배열을 할당해준다.
 
for (let i = 0; i < sample.length ; i++) {  // for 문은 sample 배열의 길이만큼 반복해주고
    if (temp > sample[i]){                       // 만약에 temp 가 sample[i] 보다 크면
        temp = sample[i];                         // temp에 해당 sample[i] 를 할당한다
    }														
}																
console.log(temp);

// 예를 들어 temp 10이고 sample이 10이면 if문 조건이 해당되지 않아 다음 반복을 돌리고
// 다음에 들어오는 수가 temp 보다 작으면 그 값을 temp에 할당하여 최종적으로 가장 작은를 출력해준다.

for 문과 if문을 사용해서 주어진 배열의 숫자 중 최솟값을 구할 수 있다. (코드에 주석 참고.)

 

 

 


 

 

 

최댓값 구하기 

let sample = [10, 20, 30, 5, 6, 3, 100, 110, 99, 98];
let temp = sample[0]

for (let i = 0; i < sample.length ; i++) {
    if (temp < sample[i]){  // 크기비교 연산자만 바꿔주면 최대값을 구하는 반복문으로 쉽게 바꿀수 있다.
        temp = sample[i];
    }
}

크기 비교 연산자만 반대로 해주면 최댓값을 구하는 포문으로 활용할 수 있다.

 

 

 


 

 

 

 

문자의 앞에 두 글자씩만 순서대로 출력하기

let text = 'javascript';  // 변수에 2개씩 출력할 텍스트를 입력한다.

for (let i = 1; i < text.length; i ++){ 
  console.log(text[i-1], text[i]);      
}

// 텍스트의 길이만큼 증감 시키는데 초기값이 0부터 시작하게 되면 텍스트의 길이가 10이라서 
//9까지 반복되는데 인덱스는 0부터 시작하때문에 총 10 번이 반복되게 된다.
//그렇게 시작하게되면 마지막에 한글자가 남거나 출력할때 i 값을 어떻게 주냐에 따라서 여러가지 방법으로
//원하지 않는 결과값이 출력 될수 있다.
//1 로 시작하고 출력되는 i의 값에 -1 을 주어서 시작점을 인덱스 0부터 시작되어 앞글자 부터 2자씩 보이게 출력한다.

주석의 내용을 어떻게 써야 잘 이해가 될지 몰라서 해당 코드에서 for문의 초기값을 0으로 바꾸고 console.log의 출력 값을 바꿔보면서 차이를 확인해보면 더 빨리 이해된다.

 

 


 

 

 

 

https://github.com/chry8822

 

chry8822 - Overview

‘Keep true to the dreams of thy youth’ . chry8822 has 12 repositories available. Follow their code on GitHub.

github.com

 

 

 

 

728x90
반응형
Comments