📖 STS,,/🖥️ JavaScript

반복문 - do ~ while문

해피스마일 :) 2025. 1. 8. 10:38

파일 생성

1. js5.html 파일을 만든다.

2. js5.js 파일을 만든다.

3. js5.html 파일에서 js5.js 파일을 불러온다.

- 파일을 만드는 방법을 모른다면 해당 글을 참고한다.

 

 

do~while문

do~while문은

var a = 1;	// 시작값
do{	// do시작
	console.log(a);	// 출력
	a++;	// 증가, 감소
} while(a < 10);	// 범위값

 

위 코드에 나온 형태로 구성되어 있다.

 

아래 코드는 내림차순으로 출력하는 코드이다.

var b = 10;
do{
	console.log(b);
	b--;
} while(b > 0);

 

[ 1~60까지 역순으로 짝수 출력하는 코드 ]

var c = 60;
do{
	if(c % 2 == 0){	// 나머지 값이 0으로 적용 되었을 경우 (짝수)
		console.log(c);	// 출력
	}
	c--;
} while(c > 0);

 

응용 문제

Q1. do~while문으로 다음과 같이 출력되는 코드를 작성하시오.
구구단 9단 중 짝수 값만 모두 합친 결과값을 출력하시오.

 

A1-1.

var num = 1;
var sum = 0;
do{
	if((num * 9) % 2 == 0){
		sum += num * 9;
	}
	num++;
} while(num < 10);
console.log(sum);

 

A1-2.

var g = 1;
var sum = 0;	// 구구단 결과값
var total = 0;	// 짝수 합계를 적용하는 변수
do{
	// console.log(9*g);
	sum = 9 * g;	// 9단 계산 결과
	if(sum % 2 == 0){	// 결과값에 대한 짝수 조건
		// total = total + sum;	// 해당 조건에 맞을 경우 결과값을 누적시키는 코드
		total += sum;
	}
	g++;
}
while(g < 10);
console.log("최종 짝수 합계 : " + total);

 

Q2. do~while문 이용하여 코드를 작성합니다.
1~100까지 숫자 중 8의 배수 중에서 60 이상인 숫자만 출력하시오.

 

A2-1.

var num = 1;
var s = 0;
do{
	s = num * 8;
	/*
	if(s >= 60){
		console.log(s);
	}
	- 조건식이 잘못됨
	*/
	if(s >= 60 && s <= 100){
		console.log(s);
	}
	num++;
} while(num <= 100);

 

if문의 조건식을 s >= 60으로 작성하면,

num을 100 이하로 설정해도 s의 최소범위만 정해져 있어서 s가 100 이상의 숫자까지 나오게 된다.

따라서 위 코드로 진행할 시, 조건식에 s의 값을 60 이상 100 이하로 설정해야 한다.

 

A2-2.

var m = 1;
do{
	if(m % 8 == 0 && m >= 60){
		console.log(m);
	}
	m++;
} while(m < 100);