김루루의 개발일기
for 반복문 / break/ continue 연습문제 풀기 - javascript 0601 본문
◎for 반복문
for ( begin ; condition ; step ) {
반복문 본문
}
- begin : 초기값
- condition : 조건
- step : 반복 본문 실행이후 실행되는 값
※ 인라인 변수선언
반복문 안에서만 선언된 변수로 반복문 안에서만 접근이 가능하다
인라인 변수 선언 대신, 밖에 정의 되어 있는 변수를 사용 할 수 도 있다
※ for 구성요소 생략가능 ( begin / step )
//begin 생략 예시 :
let i = 0;
for (; i < 5 ; i++){
alert(i);
}
//step 생략 예시 :
let i = 0;
for (; i < 5 ; ){
alert(i++);
}
◎break
대부분의 반복문은 false 일때 종료된다.
근데 특정 지시자인 break 사용하면 언제든지 반복을 종료시킬 수 있다.
ex) 아무것도 입력하지 않을때 까지 입력 받은 숫자 더한 값 출력하기.
let sum = 0;
for(i = 0; true ;){
let value = +prompt('숫자를 입력하시오')
if(!value) break;
sum += value ;
}
alert('합계' + sum );
let sum = 0;
for(i = 0; true ;){
let value = +prompt('숫자를 입력하시오')
//유저에게 입력받은 값 value 변수에 저장
if(!value) break ;
// value에 값이 있을때(false)
// 9번줄 value + sum 실행후 반복
// value에 값이 없을때(ture)
// break 실행으로 반복문 종료하고 12줄의 alert창 실행.
sum += value ;
}
alert('합계' + sum );
◎continue
현재반복을 중단하고 다음 반복으로 넘어가고 싶을때 사용한다.
(전체 반복문을 중단시키지 않고 현재 실행중인 이터레이션(반복)을 중단시키고 다음 이터레이션을 강제로 실행 시키고 싶을때 )
ex) 0부터 10까지 홀수 출력 하기
for ( let i = 0; i < 10; i++){
if( i % 2 == 0) continue ;
alert(i);
}
for ( let i = 0; i < 10; i++){
if( i % 2 == 0) continue ;
//조건이 true(짝수)라면 남아있는 본문은 실행되지 않고 다시 반복한다.
//조건이 false(홀수)라면 현재 반복문을 종료하고 남아있는 반복을 실행한다.
alert(i);
}
<모던 자바스크립트 연습문제 >
문제) 2부터 n까지의 숫자 중 소수만 출력해주는 코드
(n = 10이라면 결과는 2,3,5,7)
내가 푼 답)
let n = prompt('입력하기') ;
for ( i = 2 ; i <= n ; i++){
if( i == 2 || i == 3 || i % 2 !== 0 && i % 3 !==0)
alert(i);
}
모던 js 정답)
//정답
/* 범위 내 모든 숫자 i에 대해서 {
1과 i 사이에 제수가 있는지를 확인
있으면 => 소수가 아님
없으면 => 소수이므로 출력해줌
} */
let n = 10;
nextPrime:
for (let i = 2; i <= n; i++) { // 각 i에 대하여 반복문을 돌림
for (let j = 2; j < i; j++) { // 제수(나눗수)를 찾음
if (i % j == 0) continue nextPrime; // 소수가 아니므로 다음 i로 넘어감
}
alert( i ); // 소수
}
(내가짠 코드랑 비교 북그럽...**
결과는 같은데 코드가 다른게 정말 신기하다!
모던js 정답 실행 순서가 조금 이해가 안된다 ㅠㅠ)
'프론트엔드 > Javascript' 카테고리의 다른 글
function 함수이름짓기 (2) - javascript 0604 (0) | 2021.06.13 |
---|---|
function 함수/return반환값 (1) - javascript 0604 (0) | 2021.06.13 |
if 조건문 / 연습문제 - javascript 0603 (0) | 2021.06.13 |
switch문 - javascript 0602 (0) | 2021.06.13 |
Comments