Javascript 기초 2

2025. 1. 8. 09:00·Web

1. 더블 반복문 (for)

var f,ff;

for(f=1;f<4;f++){
	for(ff=1;ff<6;ff++){
		console.log(ff);
	}
}

=> 1 2 3 4 5가 3번 반복

 

😊응용문제

더블 반복문만 이용하여 다음 결과가 되도록 출력
4 5 6 3 4 5 2 3 4
var c,cc;

for(c=3;c>0;c--){
	for(cc=1;cc<4;cc++){
		console.log(cc+c);
	}
}
2~9단 출력
var a,aa;
for(a=2;a<10;a++){
	for(aa=1;aa<10;aa++){
		console.log(a+"*"+aa+"="+a*aa);
	}
}
더블반복문을 이용하여 다음 결과가 출력되는 코드를 작성
구구단 5단부터 8단까지 값 중 결과값이 짝수인 모든 숫자 합계 출력
var sum = 0;
for(a=5;a<9;a++){
	for(aa=1;aa<10;aa++){
		if(a*aa%2==0){
			sum+=a*aa;
		}
	}
}
console.log(sum);

=> 870

 

2. 더블 반복문 (while)

var a=2;
while(a<=4){
	var aa=1;
	while(aa<=9){
		//console.log(a*aa);
		aa++;
	}
	a++;
}
  • while, do~while 더블 사용시 작은 반복문에 대한 변수 선언을 큰 반복문 안에 적용해야만 정상적으로 반영

⭐작은 반복문 초기화 중요 //안할시 큰 반복문 한번만 돌고 멈춤

 

😊응용문제

다음 결과처럼 출력되는 더블 반복문 코드작성 (while 사용)
7 * 9 = 63
7 * 8 = 56 
...
3 * 1 = 3 
var b = 7;
while(b>2){
	var bb=9;
	while(bb>0){
		console.log(b+" * "+bb+" = "+b*bb);
		bb--;
	}
	b--;
}
2단 ~ 9단 결과값이 40이상인 구구단만 출력 (더블 while문 + if문 사용)
var h = 2;
var result = 0;
while(h<=9){
	var hh=1;
	while(hh<=9){
		result=h*hh;
		if(result>=40){
			console.log(h+" * "+hh+" = "+result);
		}
		hh++;
	}
	h++;
}
구구단 6단~8단 중 결과값이 홀수 및 짝수 각각의 합계 출력 (더블while문 + if문 사용)
var c=6, cc=1;
var osum=0, esum=0, result=0;
while(c<9){
	cc=1;
	while(cc<10){
		result=c*cc;
		if(result%2==0){
			esum+=result;
		}else if(result%2==1){
			osum+=result;
		}
		cc++;
	}
	c++;
}
console.log("짝수합 : "+esum);
console.log("홀수합 : "+osum);

⭐NaN오류 : Not a Number 변수선언하고 초기화 안했을때 자료형오류

 

3. 더블 반복문 (do~while)

var a = 1;
do{
	var aa = 1;
	do{
		console.log(a+aa);
		aa++;
	}while(aa<4);
	a++;
}while(a<4);

=> 123이 3번 반복

😊응용문제

구구단 2~4단 모든 결과값을 더한 값 출력
var b=2;
var sum=0;
do{
	var bb=1;
	do{
		sum+=b*bb;
		bb++;
	}while(bb<10);
	b++;
}while(b<5);
console.log(sum);

=> 405

구구단 8~9단 모든 결과 숫자를 합하여, 짝수인지 홀수인지
출력 단, 결과는 "최종합계는는 짝수 or 홀수입니다" 라고 출력
var c=8;
var sum2=0;
do{
	var cc=1;
	do{
		sum2=c*cc;
		cc++;
	}while(cc<10);
	c++;
}while(c<10);
if(sum2%2==0){
	console.log("최종합계는 짝수입니다");
}else if(sum2%2==1){
	console.log("최종합계는 홀수입니다");
}

=> 최종합계는 홀수입니다

 

 

4.복합 더블 반복문

var a;
for(a=2;a<=5;a++){
	var b=1;
	while(b<=9){
		console.log(a+" * "+b+" = "+a*b);
		b++
	}
}

=> 2~5단 출력

😊응용문제

do~while + for문으로 위와 같은 결과를 출력
var c=2;
var d=1;
do{
	for(d=1;d<=9;d++){
		console.log(c+" * "+d+" = "+c*d);
	}
	c++;
}while(c<=5);
do~while문 while문 사용
다음과 같은 결과
2*2=4
3*2=6
3*3=9
4*2=8
4*3=12
4*4=16
...
5*5=25
var e=2;
var f=2;

while(e<=5){
	f=2;
	do{
		//console.log(e+" * "+f+" = "+e*f);
		f++;
	}while(f<=e);
	e++;
}
//같은 코드
do{
	f=2;
	while(f<=e){
		console.log(e+" * "+f+" = "+e*f);
		f++;
	}
	e++;
}while(e<=5);
do~while, for 사용
[결과]
6단~2단 역순으로 출력
6*9=54
6*8=48
...
2*1=2
var g=6, h=9;

do{
	for(h=9;h>=1;h--){
		console.log(g+" * "+h+" = "+g*h);
	}
	g--;
}while(g>=2);

 

for while if 사용
구구단 짝수단만 출력
var a;
for(a=2; a<=9; a++){
	if(a%2==0){
		var b=1;
		while(b<=9){
			console.log(a+" * "+b+" = "+a*b);
			b++;
		}
	}
}
do~while + for 사용
구구단 2~8단 중 4단,7단,8단만 출력

 

var c=2;
var d;

do{
	if(c==4||c==7||c==8){
		for(d=1;d<=9;d++){
			console.log(c+" * "+d+" = "+c*d);
		}
	}
	c++;
}while(c<=8);

 

while, do~while 사용
사용자가 2개의 숫자를 입력합니다. 2개의 숫자 범위에 해당되는 구구단을 출력
단, 작은 반복문에 작동시 짝수에 해당되는 정수만 사용
예시
var no=3;
var no2=5;
=>3~5단
3*2
3*4...
var e = 2;
var f = 7;
var g = 1;

while(e<=f){
	g=1;
	do{
		if(g%2==0){
			console.log(e+" * "+g+" = "+e*g);
		}
		g++;
	}while(g<=9);
	e++;
}

주저리주저리

for문과 while문 중 while문이 더 빠름

실무에서 복합으로 사용할때 안쪽에 while 주로 사용

반복문 for while do~while을 자유자재로 왔다리갔다리 할 수 있게 연습!

저작자표시 비영리 변경금지 (새창열림)
'Web' 카테고리의 다른 글
  • HTML + Javascript 1
  • Javascript 기초 3
  • Javascript 기초 1
  • HTML 기초 4 + CSS [레이아웃]
9na0
9na0
응애
  • 9na0
    구나딩
    9na0
  • 전체
    오늘
    어제
    • 분류 전체보기 (211)
      • Web (118)
      • Java (28)
      • 데이터베이스 (14)
      • 세팅 (12)
      • 과제 (3)
      • 쪽지시험 (2)
      • 정보처리기사 (4)
      • 서버 (25)
  • 블로그 메뉴

    • 링크

      • 포폴
      • 구깃
    • 공지사항

    • 인기 글

    • 태그

      net2
      macbook pro m4
      noticewriteok
      file25_t
      re_java10
      file25
      java_io1~10
      datalist
      exam1_1~10
      re2
      spring-boot
      file24
      net1
      Oracle
      net5~10
      ab1
      io_dto
      net3
      notice_writer
      net4
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.3
    9na0
    Javascript 기초 2
    상단으로

    티스토리툴바