반복문4_개념01_배수_순서.html
<script>
/*
[문제]
100 이상인 9의 배수 중에서 3번째 배수를 출력하시오.
[정답]
126
*/
/*
[설명]
배수는 범위를 특별히 제한하지 않으면 계속해서 커지기 때문에,
위 문제를 풀기 위해선 무한 반복문을 사용해야 한다.
*/
let run = true;
let a = 1;
let count = 0;
let rs = 0;
while(run){
if(a % 9 == 0 && a >= 100){
console.log(a);
count += 1;
rs = a;
}
if(count == 3){
run = false;
console.log(rs);
document.write(rs);
}
a += 1;
}
</script>
반복문4_개념02_배수_십의자리_순서.html
<script>
/*
[문제]
100 이상인 9의 배수 중에서
10의 자리가 6인 두 번째 배수를 출력하시오.
[정답]
261
*/
/*
[설명]
배수는 범위를 특별히 제한하지 않으면 계속해서 커지기 때문에,
위 문제를 풀기 위해선 무한 반복문을 사용해야 한다.
*/
////////////////////
//==============================================================
let a = 1;
let run = true;
let count = 0;
let rs = 0;
while(run == true){
let 십의자리 = parseInt(a % 100 / 10);
if(a % 9 == 0 && a >= 100 && 십의자리 == 6){
count += 1;
}
if(count == 2){
run = false;
rs = a;
console.log(rs);
document.write(rs +"<br>");
}
a += 1;
}
</script>
반복문4_개념03_배수_개수.html
<script>
/*
[문제]
100 이상인 7의 배수 중
3개만 차례대로 출력하시오.
[정답]
105
112
119
*/
let a = 100;
let count = 0 ;
let run = 1;
while(run){
if(a % 7 == 0){
count += 1;
console.log(a);
document.write(a +"<br>");
}
if(count == 3){
run = 0;
}
a += 1;
}
</script>
반복문4_개념04_배수_백의자리_개수.html
<script>
/*
[문제]
100 이상인 15의 배수 중
백의 자리가 7인
배수 3개만 차례대로 출력하시오.
[정답]
705
720
735
*/
let a = 100 ;
let count = 0;
let run = 1;
while(run){
let 백의자리 = parseInt(a % 1000 / 100);
if(a % 15 == 0 && 백의자리 == 7){
count += 1;
console.log(a);
document.write(a + "<br>");
}
if(count == 3){
run = 0
}
a += 1;
}
</script>
반복문4_개념05_배수_직전.html
<script>
/*
[문제]
세 자릿수의 28의 배수 중에서 가장 큰 수를 출력하시오.
[정답]
980
*/
let a = 1;
let count = 0;
let rs = 0;
let run = 1 ;
while(run){
if(a >= 100 && a < 1000 && a % 28 == 0){
rs = a;
}
if( a > 1000){
run = 0;
}
a += 1;
}
console.log(rs);
document.write(rs+"<br>");
</script>
반복문4_개념06_약수_직전직후.html
<script>
/*
[문제]
280의 약수 중에
50바로 전의 값과 바로 뒤의 값을 구하시오.
[정답]
40
56
*/
let a = 1;
let count = 0;
let x = 0;
let y = 0;
while(a <= 280){
if(280 % a == 0){
if(a <= 50){
x = a;
}
if(a >= 50){
count += 1;
y = a;
}
}
if(count == 1){
a = 300
}
a += 1;
}
console.log(x);
console.log(y);
document.write("x = " + x + "<br>y = " + y)
</script>
반복문4_개념07_약수_순서.html
<script>
/*
[문제]
75의 약수 중에서 작은 수부터 큰 수를 출력했을 때,
다섯 번째 약수만 출력하시오.
[정답]
25
*/
let a = 1;
let run = true;
let rs = 0;
let count = 0;
while(run){
if(75 % a ==0){
count += 1;
}
if(count == 5){
run = false;
console.log(a);
document.write(a + "<br>");
}
a += 1;
}
</script>
반복문4_개념08_약수_순서_거꾸로.html
<script>
/*
[문제]
852의 약수 중에서 큰 수부터 작은 수를 거꾸로 출력했을 때,
다섯 번째 약수만 출력하시오.
[정답]
142
*/
let a = 852;
let count = 0;
while(a >= 1){
if(852 % a == 0){
count += 1;
}
if(count == 5){
console.log(a);
document.write(a+"<br>");
a = -100;
}
a -= 1;
}
</script>
반복문4_개념09_약수_백의자리_순서.html
<script>
/*
[문제]
1980의 약수 중에서 순서대로 약수를 출력했을 때,
십의 자리가 9인 두 번째 약수를 출력하시오.
[정답]
99
*/
let a = 1;
let count = 0;
while(a <= 1980){
let 십의자리 = parseInt(a % 100 /10);
if(1980 % a == 0 && 십의자리 == 9){
count += 1;
}
if(count == 2){
console.log(a);
document.write(a+"<br>");
a = 2000;
}
a += 1;
}
</script>
반복문4_문제01_배수_순서.html
<script>
/*
[문제]
[1] 100 이상의 숫자 중에서
7의 배수를 순차적으로 검색하고,
[2] 그 중 3번째 7의 배수를 출력하시오.
[정답]
119
*/
let a = 100;
let run = 1;
let count = 0;
while(run){
if(a % 7 == 0){
count += 1;
}
if(count == 3){
console.log(a);
document.write(a + "<br>")
run = 0
}
a += 1;
}
</script>
반복문4_문제02_배수_일의자리_순서.html
<script>
/*
[문제]
9의 배수 중 일의 자리가 6인
첫 번째 배수를 출력하시오.
[정답]
36
*/
let a = 1;
let count = 0;
let run = 1;
while(run){
let 일의자리 = parseInt(a % 10);
if(a % 9 == 0 && 일의자리 == 6){
count += 1;
}
if(count == 1){
run = 0;
console.log(a);
document.write(a +"<br>");
}
a += 1;
}
</script>
반복문4_문제03_배수_십의자리_순서.html
<script>
/*
[문제]
9의 배수 중 십의 자리가 6인
다섯 번째 배수를 출력하시오.
[정답]
369
*/
let a = 1;
let count = 0;
let run = 1;
while(run){
let 십의자리 = parseInt(a % 100 / 10);
if(a % 9 == 0 && 십의자리 == 6){
count += 1;
}
if(count == 5){
run = 0;
console.log(a);
document.write(a+"<br>");
}
a += 1;
}
</script>
반복문4_문제04_배수_순서_빼기.html
<script>
/*
[문제]
다음 조건이 전부 맞는 수를 출력하시오.
[조건1] 13의 배수를 전부 검사한다.
[조건2] 그 중 6번째 배수에서 4번째 배수를 뺀 수를 구한다.
4번째는 배수는 52, 6번째 배수는 78이다.
[정답]
26
*/
let a = 1;
let count = 0;
let 네번째 = 0;
let 여섯 = 0;
let run = 1;
while(run){
if(a % 13 == 0){
count += 1
if(count == 4){
네번째 = a;
}
else if(count == 6){
run = 0;
여섯 = a;
}
}
a += 1;
}
console.log(네번째);
console.log(여섯);
document.write("여섯번째 = " + 여섯 + " 네번째 = " + 네번째 + " 답 = " + (여섯 - 네번째));
</script>
반복문4_문제05_배수_개수.html
<script>
/*
[문제]
[1] 100 이상의 숫자 중에서
7의 배수를 순차적으로 검색한다.
[2] 작은 수부터 순차적으로 다섯 개를 출력하시오.
[정답]
105 112 119 126 133
*/
let a = 100;
let count = 0;
let run = 1;
while(run){
if ( a % 7 == 0){
count += 1
if (count <= 5){
console.log(a);
document.write(a + "<br>");
}
if(count == 5){
run = 0 ;
}
}
a += 1;
}
</script>
반복문4_문제06_배수_십의자리_개수.html
<script>
/*
[문제]
1000보다 큰 수중에서 8의 배수를 검색하고,
십의자리가 5인 배수를
가장 작은 수부터 차례대로 4개를 출력하시오.
[정답]
1056 1152 1256 1352
*/
let a = 1000;
let count = 0;
let run = 1;
while(run){
let 십의자리 = parseInt(a % 100 / 10);
if(a % 8 == 0 && 십의자리 == 5 ){
count += 1;
if(count <= 4){
console.log(a);
document.write(a + " ")
}
if( count == 4){
run = 0 ;
}
}
a += 1;
}
</script>
반복문4_문제07_배수_가까운수.html
<script>
/*
[문제]
6의 배수를 순차적으로 검사한다.
그 중 100에 가장 가까운 수를 출력하시오.
[정답]
102
*/
let a = 1;
let count = 0;
let x = 0;
let y = 0;
let run = 1;
while(run){
if(a % 6 == 0){
if(a < 100){
x = a;
}
if(a >= 100){
y = a;
run = 0;
}
}
a += 1;
}
if(100 - x <= y - 100){
console.log(x);
document.write(x+"<br>");
} else {
console.log(y);
document.write(y +"<br>");
}
</script>
반복문4_문제08_약수 _순서.html
<script>
/*
[문제]
745의 약수 중에서 작은 수부터 출력했을 때,
세 번째 약수만 출력하시오.
[정답]
149
*/
let a = 1;
let count = 0;
let run = 1;
while(run){
if(745 % a == 0){
count += 1;
if(count == 3){
console.log(a);
document.write(a +"<br>");
run = 0
}
}
a += 1;
}
</script>
반복문4_문제09_약수 _백의자리_순서.html
<script>
/*
[문제]
1980의 약수 중에서 순서대로 약수를 출력했을 때,
백의 자리가 3인 두 번째 약수를 출력하시오.
[정답]
396
*/
let a = 1;
let count = 0;
let run = 1;
while(run){
let 백의자리 = parseInt(a % 1000 /100);
if(1980 % a == 0 && 백의자리 == 3){
count += 1;
if(count == 2){
console.log(a);
document.write(a+"<br>");
run = 0;
}
}
a += 1;
}
</script>
반복문4_문제10_약수 _십의자리_순서.html
<script>
/*
[문제]
1980의 약수 중에서 순서대로 약수를 출력했을 때,
십의자리가 3인 두 번째 약수를 출력하시오.
[정답]
33
*/
let a = 1;
let count = 0 ;
let run = 1;
while(run){
let 십의자리 = parseInt(a % 100 /10);
if(1980 % a == 0 && 십의자리 == 3){
count += 1
if(count == 2){
run = 0;
console.log(a);
document.write(a+"<br>");
}
}
a += 1;
}
</script>
반복문4_문제11_약수 _일의자리_순서.html
<script>
/*
[문제]
120의 약수 중에서 순서대로 약수를 출력했을 때,
일의자리가 4인 두 번째 약수를 출력하시오.
[정답]
24
*/
let a = 1;
let count = 0;
let run = 1;
while(run){
let 일의자리 = parseInt(a % 10)
if(120 % a == 0 && 일의자리 == 4){
count += 1;
if(count == 2){
run = 0;
console.log(a);
document.write(a + "<br>");
}
}
a += 1;
}
</script>
반복문4_문제12_약수_순서_빼기.html
<script>
/*
[문제]
100의 약수 중에서
5번째 약수에서 2번째 약수를 뺀 값을 구하시오.
[정답]
8
*/
let a = 1;
let count = 0;
let run = 1;
let x = 0;
let y = 0;
while(run){
if(100 % a == 0){
count += 1;
if(count == 2){
x = a;
}
if(count == 5){
y = a;
run = 0;
}
}
a += 1;
}
console.log(x + " , " + y);
document.write(x + " , " + y + "<br>");
document.write(y - x);
</script>
반복문4_문제13_약수_가까운수.html
<script>
/*
[문제]
200의 약수 중에서 짝수 중
80에 가장 가까운 수를 구하시오.
[정답]
100
*/
let a = 1;
let count = 0;
let run = 1;
let x = 0;
let y = 0;
while(run){
if(200 % a == 0){
if(a <= 80){
x = a;
}
if(a > 80){
y = a;
run = 0;
}
}
a += 1;
}
console.log(x + " , " + y)
if(80 - x < y - 80){
console.log(x);
document.write(x + "<br>");
} else {
console.log(y);
document.write(y +"<br>");
}
</script>
반복문5_개념01_연립방정식_칼로리.html
<script>
/*
[문제]
자전거는 1분에 4칼로리가 소모되고,
줄넘기는 1분에 9칼로리가 소모된다.
철수는 95분 동안 505칼로리를 소모했다.
철수가 각 운동에 사용한 시간은 각각 얼마인지 구하시오.
[정답]
자전거 = 70분
줄넘기 = 25분
*/
/*
자전거분 = x
줄넘기분 = y
x + y = 95
4x + 9y = 505
*/
let 총시간 = 95;
let 총칼로리 = 505;
let x = 총시간;
let y = 0;
while(true){
if(x + y == 총시간 && 4 * x + 9 * y == 505){
break;
} else {
x -= 1;
y += 1;
}
}
console.log(x + " , " + y);
document.write(x + " , " + y);
</script>
반복문5_개념02_연립방정식_속력.html
<script>
/*
[문제]
철수네 가족은 x와 y 두 지점을 자전거를 타고 왕복하였다.
갈 때는 시속15km, 올 때는 시속 12km로 이동하여 총 45분이 걸렸을 때,
두 지점 x, y의 거리를 구하시오.
[정답]
5km
*/
/*
15키로 이동시간 = x
12키로 이동시간 = y
x + y = 45;
15/60 * x = 12/60 * y
*/
let 총시간 = 45;
let x = 총시간;
let y = 0;
while(true){
if(x + y == 총시간 && 15/60 * x == 12/60 * y ){
break;
} else {
x -= 1;
y += 1;
}
}
console.log(x + " , " + y);
document.write(x + " , " + y);
console.log(15/60 * x);
document.write("<br>"+ 15/60 * x )
</script>
반복문5_개념03_연립방정식_동물원요금..html
<script>
/*
[문제]
철수네 반 학생들은 소풍을 나왔다.
학생 수는 전부 24명이고 일부는 동물원 관람, 나머지 학생은 미술관 관람하였다.
동물원 입장료는 3000원이고, 미술관 입장료는 1000원이다.
학생 24명의 총 입장료는 40000원이었다.
동물원에 입장한 학생 수와 미술관에 입장한 학생 수를 각각 구하시오.
[정답]
동물원 입장한 학생 수 = 8명
미술관 입장한 학생 수 = 16명
*/
/*
동물원학생수 = x
미술관학생수 = y
x + y = 24
3000x + 1000y = 40000
*/
let 총학생수 = 24;
let 총입장료 = 40000;
let x = 총학생수;
let y = 0;
while(true){
if(x + y == 총학생수 && 3000 * x + 1000 * y == 총입장료){
break;
} else {
x -= 1;
y += 1;
}
}
console.log( x + " , " + y);
document.write(x + " , " + y);
</script>
반복문5_개념04_연립방정식_미술관.html
<script>
/*
[문제]
중학생인 미연이는 부모님과 함께 미술관에 갔다.
어른의 입장료가 청소년의 입장료보다 2000원이 더 비싸고,
세 사람의 입장료가 13000원일때, 미연이의 입장료를 구하시오.
[정답]
미연이의 입장료 = 3000원
*/
// x = y + 2000
// 2x + y = 13000
/*
어른입장료 = x
아이입장료 = y
2x + y = 13000
x = y + 2000
*/
let 총입장료 = 13000;
let x = 총입장료;
let y = 0;
while(true){
if(x / 2 - y == 2000 && x + y == 총입장료 ){
break;
} else {
x -= 1;
y += 1;
}
}
console.log (x /2 + " , " + y);
document.write(x /2 + " , " + y);
</script>
반복문5_개념05_연립방정식_산책로.html
<script>
/*
[문제]
철수는 총거리가 5km인 산책로를 걷는데
처음에는 시속 4km로 걷다가 도중에 힘이 들어
남은 거리는 시속 2km로 걸어서
2시간 만에 산책을 마쳤다.
시속 4km로 걸은 거리와 시속 2km로
걸은거리를 각각 구하시오.
[정답]
시속 4km로 걸은 거리 = 2km
시속 2km로 걸은 거리 = 3km
*/
/*
4키로로 걸은시간 = x
2키로로 걸은시간 = y
x + y = 2 * 60
4/60 * x + 2/60 * y = 5
*/
let 총거리 = 5
let 총시간 = 2 * 60
let x = 총시간;
let y = 0;
while(true){
if (x + y == 총시간 && 4/60 * x + 2/60 * y == 5 ){
break;
} else {
x -= 1;
y += 1;
}
}
console.log(x + " , " + y);
document.write(x * 4/60 + " , " + y * 2/60);
</script>
반복문5_개념06_연립방정식_동물다리.html
<script>
/*
[문제]
어느 농장에는 토끼와 오리가 모두 35마리가 있다.
토끼와 오리의 다리의 수의 합이 96개일 때,
토끼와 오리는 각각 몇마리 인지 구하시오.
[정답]
토끼 = 13마리
오리 = 22마리
*/
/*
토끼 = x
오리 = y
x + y = 35
4x + 2y = 96
*/
let 총마리 = 35;
let 총다리 = 96;
let x = 총마리;
let y = 0;
while(true){
if(x + y == 총마리 && 4 * x + 2 * y == 총다리){
break;
} else {
x -= 1;
y += 1;
}
}
console.log(x + " , " + y);
document.write(x + " , " + y);
</script>
반복문5_문제01_연립방정식_합격.html
<script>
/*
[문제]
철수는 두 번의 시험에서 각각 80점과 72점을 받았다.
세 번째 시험에서 최소 몇 점 이상을 받아야
세 번의 시험성적의 평균이 82점 이상이 될 수 있을까?
시험점수는 1점 단위로 설정된다.
[정답]
94
*/
/*
첫번째 = 80
두번쨰 = 72
세번째 = x
(80 + 72 + x) / 3 >= 82
*/
let x = 0
while(true){
if((80 + 72 + x) / 3 >= 82){
break;
} else {
x += 1;
}
}
console.log(x);
document.write(x);
</script>
반복문5_문제02_연립방정식_시험점수.html
<script>
/*
[문제]
철수네 학교의 수학 시험은 4점짜리 문제와 5점짜리 문제가 섞여서 출제된다.
철수는 20개의 문제를 맞혀서 90점을 받았다.
각각 몇 문제씩 맞혔는지 구하시오.
주석으로 표현하시오.
[정답]
4점 문제 = 10
5점 문제 = 10
*/
/*
4점개수 = x
5점개수 = y
x + y = 20;
4x + 5y = 90;
*/
let 총맞은개수 = 20;
let 총점수 = 90;
let x = 총맞은개수;
let y = 0;
while(true){
if(x + y == 총맞은개수 && 4 * x + 5 * y == 총점수){
break;
}
else{
x -= 1;
y += 1;
}
}
console.log(x + " , " + y);
document.write(x + " , " + y);
</script>
반복문5_문제03_연립방정식_편의점.html
<script>
/*
[문제]
철수가 편의점에서 우유를 15개 구입하려고 한다.
한 개에 1000원인 흰 우유와
한 개에 1200원인 초코 우유를 합쳐서 총 15개 구입했다.
20000원을 내고 4200원을 거슬러 받았을 때
철수가 구입한 흰 우유는 몇 개인지 구하시오.
[정답]
11
*/
/*
흰우유개수 = x
초코우유개수 = y
x + y = 15
1000x + 1200y = 20000 - 4200
*/
let 총우유개수 = 15;
let 총금액 = 20000 - 4200;
let x = 총우유개수;
let y = 0;
while(true){
if(x + y == 총우유개수 && 1000 * x + 1200 * y == 총금액){
break;
}
else {
x -= 1;
y += 1;
}
}
console.log( x);
document.write(x);
</script>
반복문5_문제04_연립방정식_요금제.html
<script>
/*
[문제]
아래와 같은 휴대요금제가 있다 .
B를 선택할 경우 A보다 더 경제적으로 되려면,
통화 시간을 얼마까지 사용해야 할지 정답을 초로 구하시오.
A요금제 기본요금 17500원 초당 5원이고,
B요금제 기본요금 31000원 초당 2원이다.
[정답]
4501
*/
/*
17500 + 5x > 31000 + 2x
*/
let x = 0;
while(true){
let a = 17500 + 5 * x;
let b = 31000 + 2 * x;
if(a > b){
break;
} else {
x += 1;
}
}
console.log(x);
document.write(x);
</script>
반복문5_문제05_연립방정식_교통카드.html
<script>
/*
[문제]
선호네 반 학생 25명이 체험학습을 가기 위해
버스를 탔는데, 총 요금이 19400원이었다.
교통카드를 사용하면 720원이고,
현금으로 지불하면 1000원일 때,
교통카드를 사용한 학생 수와 현금을 사용한 학생 수는
각각 얼마인지 구하시오.
[정답]
카드 = 20
현금 = 5
*/
/*
교통카드수 = x
현금수 = y
x + y = 25
720x + 1000y = 19400
*/
let 총인원수 = 25;
let 총요금 = 19400;
let x = 총인원수;
let y = 0;
while(true){
if(x + y == 총인원수 && 720 * x + 1000 * y == 총요금){
break;
} else {
x -= 1;
y += 1;
}
}
console.log(x + " , " + y);
document.write(x + " , " + y);
</script>
반복문5_문제06_연립방정식_나이.html
<script>
/*
[문제]
철수는 13살 철수의 아버지는 45살이다.
몇 년 후 철수의 아버지는 철수 나이의 3배가 될지 구하시오.
[정답]
3
*/
/*
철수 = 13
아빠 = 45
3(13+ x) = 45 + x
39 + 3x = 45 + x
2x = 6
*/
let x = 0;
while(true){
let 철수 = 13 + x;
let 아빠 = 45 + x;
if(3 * 철수 == 아빠){
break;
} else {
x += 1;
}
}
console.log(x);
document.write(x);
</script>
반복문5_문제07_연립방정식_자전거.html
<script>
/*
[문제]
학교에서 집까지 갈 때 시속 15km로 자전거를 타고 가면,
시속 6km로 걸어가는 것보다 18분 일찍 도착한다고 한다.
학교에서 집까지의 거리를 구하시오.
[정답]
3
*/
/*
분으로 변경
15 /60 * (x - 18) = 6 / 60 * x
6 / 60 * x
x = 도착햇을때 분
15 /60 * x = 답
*/
let 분15 = 15/60;
let 분6 = 6/60;
let x = 0;
while(true){
if(분15 * (x - 18) == 분6 * x){
break;
}
else {
x += 1;
}
}
console.log(x);
document.write(x + "<br>");
console.log(x * 분6);
document.write(x * 분6);
</script>
반복문6_개념01_공약수.html
<script>
/*
[문제]
90과 45의 공약수를 출력하시오.
[정답]
1 3 5 9 15 45
*/
/*
공약수 구하기
1. 변수 a b 지정?
90 % a == 0 == 45 % a ==0
*/
let a = 0;
while(a <= 90){
if(90 % a == 0){
if(45 % a == 0){
console.log(a);
document.write(a + " ");
}
}
a += 1;
}
</script>
반복문6_개념02_최대공약수.html
<script>
/*
[문제]
90과 45의 최대공약수를 출력하시오.
[출력]
45
*/
let a = 0;
let x = 0;
while(a <= 90){
if(90 % a == 0 && 45 % a == 0){
x = a;
}
a += 1;
}
console.log(x);
document.write(x);
</script>
반복문6_개념03_팀원.html
<script>
/*
[문제]
철수네 반은 여학생 16명과 남학생 20명으로 구성되어있다.
팀을 나눠서 조별 과제를 하려고 한다.
각 팀당 여학생과 남학생 수를 똑같이 구성하고,
최대한 많은 팀을 만들 때 몇 팀을 만들 수 있는지 구하시오.
[정답]
4
*/
let a = 0;
let x = 0;
while(a <= 20){
if(16 % a == 0 && 20 % a == 0){
x = a;
}
a += 1;
}
console.log(x);
document.write(x);
</script>
반복문6_개념04_조별과제.html
<script>
/*
[문제]
철수네 반은 여학생 16명과 남학생 22명으로 구성되어있다.
팀을 나눠서 조별 과제를 하려고 한다.
각 팀당 여학생과 남학생 수를 똑같이 구성하고,
최대한 많은 팀을 만들 때 남학생 수가 2명이 남는다고 할 때
몇 팀을 만들 수 있는지 구하시오.
[정답]
4
*/
// 22 - 2 = 남학생
let a = 0;
let x = 0;
while(a <= 20){
if(16 % a == 0 && 20 % a == 0){
x = a;
}
a += 1;
}
console.log(x);
document.write(x +"<br>")
</script>
반복문6_개념05_공배수.html
<script>
/*
[문제]
12와 15의 공배수를 작은 것부터 순서대로 5개만 출력하시오.
[정답]
60 120 180 240 300
*/
let a = 1;
let count = 0;
while(true){
if(a % 12 == 0 && a % 15 == 0){
count += 1;
console.log(a);
document.write(a + " ");
if(count == 5){
break;
}
}
a += 1;
}
</script>
반복문6_개념06_최소공배수.html
<script>
/*
[문제]
8과 12의 최소 공배수를 구하오.
최소 공배수란, 각 수의 배수를 나열한 다음 처음으로 같은 숫자를 말한다.
예) 8 16 24...
예) 12 24....
여기서 24가 최소공배수이다.
[정답]
24
*/
let x = 8;
let y = 12;
let a = 12;
while(true){
if(a % x == 0 && a % y == 0){
console.log(a);
document.write(a);
break;
}
a += 1;
}
</script>
반복문6_개념07_세친구.html
<script>
/*
[문제]
자전거로 운동장을 한 바퀴 도는데
철수는 90초,
영희는 60초,
민수는 45초가 걸린다.
이와 같은 속력으로 같은 곳에서 동시에 출발하여 같은 방향으로 운동장을 돌 때,
1) 세 사람이 처음으로 출발점에서 다시 만나게 되는 것은 몇 초 후인지 구하시오.
2) 다시 만나게 되었을 때 민수는 몇 바퀴 돌았을 때인지 구하시오.
[정답]
1) 180초
2) 4바퀴
*/
let x = 90;
let y = 60;
let z = 45;
let a = 90;
while(true){
if(a % x == 0 && a % y == 0 && a % z == 0){
console.log(a);
document.write(a + "<br>");
console.log( a / z);
document.write(a / z);
break;
}
a += 1;
}
</script>
반복문6_개념08_줄서기.html
<script>
/*
[문제]
a중학교 1학년 입학하는 학생들은
8줄, 12줄, 18줄로 세워도
항상 5명이 남을 때, 1학년 전체 학생 수를 구하시오.
(학생 수는 200명 이상 250명 미만)
[정답]
221
*/
let x = 8;
let y = 12;
let z = 18;
let a = 200;
while(a <= 250){
if(a % x == 5 && a % y == 5 && a % z == 5){
console.log(a);
document.write(a);
}
a += 1;
}
</script>
반복문6_개념09_dowhile.html
<script>
/*
[do - while문]
1. while문의 변형된 형태이다.
2. 구조
1) do : 조건식이 없기 때문에 일단 실행부터 한다.
2) {} : 실행할 문장
3) while(조건) : 위에서 실행을 먼저 하고 조건을 검사한다.
조건이 사실이면 다시 do로 이동한다.
4) [주의] ; 세미콜론을 반드시 붙여야한다.
*/
let i = 10;
do {
document.write("do-while<br>");
i += 1;
} while ( i < 3 );
i = 10;
while(i < 3) {
document.write("while<br>");
i += 1;
}
</script>
반복문6_문제01_최대공약수.html
<script>
/*
[문제]
45와 60, 75의 최대공약수를 구하시오.
[정답]
15
*/
let a = 1;
let x = 0;
while(a <= 75){
if(60 % a == 0 && 75 % a == 0){
x = a;
}
a += 1;
}
console.log( x);
document.write(x);
</script>
반복문6_문제02_최소공배수.html
<script>
/*
[문제]
45와 60, 75의 최소공배수를 구하시오.
[정답]
900
*/
let a = 75;
while(true){
if(a % 60 == 0 && a % 75 == 0 && a % 45 == 0){
console.log(a);
document.write(a);
break;
}
a += 1;
}
</script>
반복문6_문제03_구호물품.html
<script>
/*
[문제]
구호 물품으로 소독약 120개와 붕대 72개를
환자 한 명당 똑같은 양의 소독약과 붕대를 나눠주려고 한다.
최대한 많은 환자에게 나눠줄 때 몇 명인지 구하시오.
[정답]
24
*/
let x = 120
let y = 72
let a = 1
let rs = 0;
while(a <= 120){
if(x % a == 0 && y % a == 0){
rs = a;
}
a += 1;
}
console.log(rs);
document.write(rs);
</script>
반복문6_문제04_상자.html
<script>
/*
[문제]
자동차 모형 28개와 로봇 모형 42개를 여러 상자에 나눠 담으려 한다.
각 상자마다 자동차 모형 개수와 로봇 모형 개수가 같아야 하며,
최대한 많은 상자에 나눠 담을 때
자동차 모형 몇 개와 로봇 모형 몇 개씩 넣어야 하는지 구하시오.
[정답]
자동차 = 2
로봇 = 3
*/
let x = 28;
let y = 42;
let a = 1;
let rs = 0;
while(a <= 28){
if(x % a == 0 && y % a == 0){
rs = a;
}
a += 1;
}
let 자동차 = x / rs;
let 로봇 = y / rs;
console.log(자동차 + " , " + 로봇);
document.write(자동차 + " , " + 로봇);
</script>
반복문6_문제05_사탕.html
<script>
/*
[문제]
사탕 62개와 초콜릿 88개를 각각 남김없이 똑같이 최대한
많은 학생에게 나눠주려고 할 때, 학생 수를 구하시오.
단, 사탕은 2개가 남고 초콜릿은 4개가 남는다.
[정답]
12
*/
let x = 62;
let y = 88;
let a = 1;
let rs = 0;
while(a <= x){
if(x % a == 2 && y % a == 4){
rs = a ;
}
a += 1;
}
console.log(rs);
document.write(rs);
</script>
반복문6_문제06_운동장.html
<script>
/*
[문제]
철수는 자전거로 운동장 한 바퀴 도는데 70초,
민수는 90초가 걸린다.
30분 동안 운동장을 돌면 출발점에서
다시 만나는 횟수가 몇 번인지 구하시오.
단, 30분 동안 항상 일정한 속도를 유지한다.
[정답]
2
*/
/*
time = 30 * 60
철수 = 70초
민수 = 90초
시간 = x
*/
let x = 70;
let y = 90;
let time = 30 * 60;
let a = y;
let count = 0;
while(a <= time){
if(a % x == 0 && a % y ==0){
console.log(a);
document.write(a + "<br>");
count += 1;
}
a += 1;
}
console.log(count);
document.write(count);
</script>
반복문6_문제07_수영장.html
<script>
/*
[문제]
철수와 민수는 같은 수영장에 다닌다.
철수는 4일마다 한 번씩 가고 민수는 5일마다 한 번씩 간다.
철수와 민수가 2월 3일 처음 만났다면
다음에 서로 만나는 날은 언제인지 구하시오.
[정답]
23
*/
let x = 4;
let y = 5;
let a = y;
while(true){
if(a % x == 0 && a % y == 0){
console.log(a);
document.write(a+ "<br>");
break;
}
a += 1;
}
console.log(3 + a);
document.write(3 + a);
</script>
반복문6_문제08_버스출발.html
<script>
/*
[문제]
어느 시외버스 터미널에서 대전행버스는 10분 간격으로 출발,
광주행버스는 15분 간격으로 출발,
부산행버스는 18분 간격으로 출발한다고 했을 때,
오전 8시에 처음 동시에 출발하고,
그 이후 처음으로 동시에 출발하는 시각을 구하시오.
[정답]
9시 30분
*/
let x = 10;
let y = 15;
let z = 18;
let time = 8 * 60;
let a = z;
while(true){
if(a % x == 0 && a % y == 0 && a % z == 0){
time += a;
break;
}
a += 1;
}
let 시 = parseInt(time / 60);
let 분 = parseInt(time % 60);
console.log(시 + "시 " + 분 + "분");
document.write(시 + "시 " + 분 + "분");
</script>