조건문1_개념01_랜덤.html
<script>
// 0 < Math.random() < 1
let num = Math.random();
document.write("Math.random() = " + num + "<br>");
document.write("Math.random() * 3 = " + num * 3 + "<br>");
document.write("Math.floor(Math.random() * 3) = "
+ Math.floor(num * 3));
/*
0.0xx 0.0xx 0
0.1xx 0.3xx 0
0.2xx 0.6xx 0
0.3xx 0.9xx 0
0.4xx * 3 1.2xx Math.floor() 1
0.5xx 1.5xx 1
0.6xx 1.8xx 1
0.7xx 2.1xx 2
0.8xx 2.4xx 2
0.9xx 2.7xx 2
*/
</script>
조건문1_개념02_랜덤.html
<script>
// 랜덤
let 랜덤 = Math.random();
console.log(랜덤);
document.write(랜덤 +"<br>");
// 만약에 0~2사이의 값을 뽑는다면,
랜덤 = 랜덤 * 3
console.log(랜덤);
document.write(랜덤+"<br>");
랜덤 = Math.floor(랜덤);
console.log(랜덤);
document.write(랜덤+"<br>");
// 위아래 같음
랜덤 = Math.floor(Math.random() * 3);
console.log(랜덤);
document.write(랜덤+"<br>");
console.log("-------------------------");
document.write("-------------------------<br>");
// 예) 1~6 주사위
주사위 = Math.random() * 6 + 1 ;
주사위 = Math.floor(주사위);
console.log(주사위);
document.write(주사위 + "<br>");
// 예) -3 ~ 3 사이의 랜덤값
rs = Math.random() * 7 - 3
rs = Math.floor(rs);
console.log(rs);
document.write(rs+"<br>");
</script>
조건문1_개념02_조건문.html
<script>
/*
[조건문] : if
조건문이란 기존의 비교연산자나 논리연산자를 사용해서
true, false를 표현했는데,
표현을 좀 더 확장하고 싶을 때 사용한다.
*/
/*
[문법]
1) if ==> 키워드
2 (조건) ==> 조건이 사실이면 실행
3) {실행영역}
문제
a = 10
b = 20
*/
let a = 10
let b = 20
//문제1 a가 10일때 "a는 10이다" 출력
if (a == 10)
{console.log("a는 "+ a +"이다")
document.write("a는 "+ a +"이다<br>")}
//문제2 b가 10보다 클때 "b는 10보다 크다" 출력
if (b > 10)
{console.log("b는 10보다 크다")
document.write("b는 10보다 크다<br>")}
//문제3 b가 10 보다 작을때 출력 X
if (b < 10)
{console.log("b는 10보다 작다")
document.write("b는 10보다 작다<br>")}
</script>
조건문1_개념03_로그인.html
<script>
let joinId = "qwer1234"
let joinPw = "1234qwer"
let logId = "qwer1234"
let logPw = "1234qwre"
if(joinId == logId && joinPw == logPw)
{console.log("로그인 성공");
document.write("로그인 성공<br>");}
if(joinId != logId || joinPw != logPw)
{console.log("로그인 실패ㅋ");
document.write("로그인 실패ㅋ<br>");}
//신기하네
</script>
조건문1_문제01_가까운수.html
<script>
/*
[문제]
a는 1 ~ 9 사이의 랜덤 숫자를 저장한다.
c는 11 ~ 20 사이의 랜덤 숫자를 저장한다.
a와 c중 어떤 숫자가 b와 더 가까운지 출력하시오.
[1] a가 c보다 가까우면 "a가 가깝다."
[2] c가 a보다 가까우면 "c가 가깝다."
[3] 서로 거리가 같으면 "서로 같다."
*/
let a = Math.floor(Math.random() * 9 + 1);
let c = Math.floor(Math.random() * 10 + 11);
console.log("a값 = "+ a);
console.log("c값 = "+ c);
document.write("a값 = "+ a +"<br>");
document.write("c값 = "+ c +"<br>");
let b = 10;
let a차이 = b - a;
let c차이 = c - b;
console.log("a와의 거리 = "+a차이);
document.write("a와의 거리 = "+a차이 +"<br>");
console.log("c와의 거리 ="+c차이);
document.write("c와의 거리 ="+c차이 + "<br>");
//a가 c보다 가까우면 "a가 가깝다";
if(c차이 > a차이){
console.log("a가 가깝다");
document.write("a가 가깝다<br>");
}
//c가 a보다 가까우면 "c가 가깝다";
if(a차이 > c차이){
console.log("c가 가깝다");
document.write("c가 가깝다<br>");
}
//서로 거리가 같으면 "서로 같다"
if(a차이 == c차이){
console.log("서로 같다");
document.write("서로 같다<br>");
}
</script>
조건문1_문제02_동전.html
<script>
/*
[문제]
동전의 앞과 뒤를 랜덤숫자 0 또는 1로 표현한다.
동전 두 개를 던져서 둘 다 "앞"이면 "정답",
둘 다 "뒤"이어도 "정답"이다.
둘 중 하나라도 반대면 "꽝"을 출력하시오.
*/
let a = Math.floor(Math.random() * 2);
let b = Math.floor(Math.random() * 2);
if(a == 0){
console.log("뒤");
document.write("뒤<br>");
}
if(b == 0){
console.log("뒤");
document.write("뒤<br>");
}
if(a == 1){
console.log("앞");
document.write("앞<br>");
}
if(b == 1){
console.log("앞");
document.write("앞<br>");
}
if(a == b) {
console.log("정답");
document.write("정답<br>");
}
if(a != b){
console.log("꽝!");
document.write("꽝");
}
</script>
조건문1_문제03_숫자비교.html
<script>
/*
[문제]
1부터 100 사이의 숫자 두 개를 랜덤으로 저장한다.
두 숫자 중 더 큰 숫자를 출력하시오.
단, 서로 같으면 "같다"를 출력하시오.
*/
let a = Math.floor(Math.random() * 100 + 1);
let b = Math.floor(Math.random() * 100 + 1);
console.log(a);
console.log(b);
if(a > b){
console.log("a =" + a);
document.write("a =" + a +"<br>");
}
if(a < b){
console.log("b =" + b);
document.write("b = " + b +"<br>");
}
if(a == b){
console.log("같다");
document.write("같다<br>");
}
</script>
조건문1_문제04_주사위두개.html
<script>
/*
[문제]
철수는 주사위 2개를 가지고 있다.
주사위는 눈금이 1~6까지 있다.
철수가 주사위 2개를 던졌을 때 그 합을 출력하시오.
단, 주사위 눈금이 서로 같으면 6을 추가로 더하시오.
[예]
1, 2 ==> 3
1, 1 ==> 2 + 6
*/
let a = Math.floor(Math.random() * 6 + 1);
let b = Math.floor(Math.random() * 6 + 1);
let 합 = a + b
console.log(a + ", " + b);
document.write(a + ", " + b +"<br>");
if(a == b){
console.log("서로 같다 " );
document.write("서로 같다<br> " );
합 = 합 + 6
}
console.log(합);
document.write(합);
</script>
조건문1_문제05_큰수작은수.html
<script>
/*
[문제]
1부터 10 사이의 랜덤 숫자 두 개를 출력한다.
하나는 반드시 1~5 사이의 숫자이어야 하고,
나머지 하나는 반드시 6~10 사이의 숫자이어야 한다.
출력순서도 랜덤으로 출력되어야 한다.
[예1]
3, 6
[예2]
8, 1
*/
let a = Math.floor(Math.random() * 5 + 1);
let b = Math.floor(Math.random() * 6 + 6);
console.log(a + ", " + b);
document.write(a + ", " + b + "<br>");
let 순서 = Math.floor(Math.random() * 2);
console.log(순서);
document.write(순서+ "<br>");
if(순서 == 0){
console.log(a + ", " + b);
document.write(a + ", " + b +"<br>");
}
if(순서 == 1){
console.log(b + ", " + a);
document.write(b + ", " + a + "<br>");
}
</script>
조건문1_문제06_할인.html
<script>
/*
[문제]
철수는 볼펜을 10~30개를 구입해야 한다.
볼펜 하나의 가격은 1200원이다.
볼펜은 20개 이상 구매 시 볼펜 한 개에 100원을 할인해주고 있다.
볼펜 수를 랜덤으로 저장하고,
철수가 지급해야 하는 금액을 출력하시오.
[예]
볼펜 수 = 22
지급 금액 = 22 * 1100 = 24200
*/
let a = Math.floor(Math.random() * 21 + 10);
let 볼펜가격 = 1200;
console.log(a);
if(a >= 20){
볼펜가격 = 볼펜가격 - 100;
console.log("할인");
document.write("할인<br>");
}
let 지급액 = 볼펜가격 * a;
console.log(지급액);
document.write(지급액+"<br>");
</script>
조건문2_개념01_도화지.html
<script>
/*
[문제]
민수네 반 학생은 26명이다.
민수네반 학생들에게 도화지를 두 장씩 나누어 주려고 한다.
도화지는 열장씩 묶음으로만 판매하고 열장에 1200원이다.
총 얼마가 필요한지 구하시오.
[정답]
7200원
*/
let 학생수 = 26;
let 필요한도화지 = 학생수 * 2;
let 도화지수 = 10;
let 도화지가격 = 1200;
let 필요한도화지묶음 = parseInt(필요한도화지 / 도화지수);
if(필요한도화지 % 도화지수 > 0){
필요한도화지묶음 = 필요한도화지묶음 + 1;
}
let 총금액 = 필요한도화지묶음 * 도화지가격;
console.log(총금액);
document.write(총금액);
</script>
조건문2_개념02_짝수홀수.html
<script>
/*
[문제]
a 변수에 1부터 10 사이의 랜덤 숫자를 저장하고,
"짝수" 또는 "홀수"를 출력하시오.
*/
let a = Math.floor(Math.random() * 10 + 1);
console.log(a);
document.write(a+"<br>");
if(a % 2 == 0){
console.log("짝수");
document.write("짝수<br>");
}
if(a % 2 == 1){
console.log("홀수");
document.write("홀수<br>");
}
</script>
조건문2_개념03_페이징.html
<script>
/*
[문제]
1 ~ 200 사이의 랜덤숫자를 저장하고 다음과 같이 출력하시오.
랜덤 숫자가
1~10 사이 값이면, 1
11~20 사이 값이면, 11
21~30 사이 값이면, 21
...........................
101 ~ 110 사이 값이면, 101
[예]
5 ==> 1
10 ==> 1
11 ==> 11
20 ==> 11
24 ==> 21
30 ==> 21
104 ==> 101
154 ==> 151
*/
let a = Math.floor(Math.random() * 200 + 1);
console.log(a);
document.write(a+"<br>");
/*
페이징
a = 147 % 10 = 7
147 - 7 + 1 = 141
페이징2
a = 150
150 - 10 + 1
141
*/
let rs = 0;
if(a % 10 == 0){
rs = a - 10 + 1
}
if(a % 10 != 0){
rs = a - a % 10 + 1
}
console.log(rs);
document.write(rs+"<br>");
</script>
조건문2_개념04_자리수.html
<script>
/*
[자리수]
[1] 10000~90000 사이의 랜덤 숫자 저장한다.
[2] 랜덤 숫자의 백의자리 숫자를 출력하시오.
[예]
[랜덤] ==> 24912
[출력] ==> 9
*/
let a = Math.floor(Math.random() * 80001) + 10000;
console.log(a);
document.write(a+"<br>");
let b = parseInt(a % 1000 / 100);
console.log(b);
document.write(b+"<br>");
</script>
조건문2_개념05_중괄호생략.html
<script>
/*
조건문의 범위에 해당하는 {} 중괄호를 생략할 수 있다.
단, 한줄만 허용되며
정확한 코딩습관을 위해 사용하지 않는 것이 좋다.
*/
let a = 10;
if(a == 10){
console.log("a = " + a);
document.write("a = " + a +"<br>");
}
let b = 20;
if(b == 21)
document.write("b = " + b + "<br>");
//중괄호 생략은 한줄짜리만 가능!
</script>
조건문2_문제01_배수.html
<script>
/*
[문제]
변수에 1부터 100 사이의 랜덤 숫자를 저장한다.
저장한 숫자의 값이 4의 배수이면 true
4의 배수가 아니면 false 출력하시오.
*/
let a = Math.floor(Math.random() * 100 + 1);
if(a % 4 == 0){
console.log("true");
document.write("true<br>");
}
if(a % 4 != 0){
console.log("false");
document.write("false<br>");
}
</script>
조건문2_문제02_약수.html
<script>
/*
[문제]
변수에 1부터 10 사이의 숫자를 랜덤으로 저장한다.
저장한 숫자의 값이 300의 약수이면 true
300의 약수가 아니면 false를 출력하시오.
*/
let a = Math.floor(Math.random() * 10 + 1);
console.log (a);
document.write("랜덤 값 =" + a + "<br>");
if(300 % a == 0){
console.log("true");
document.write("true<br>");
}
if(300 % a !=0){
console.log("false");
document.write("false");
}
</script>
조건문2_문제03_오이.html
<script>
/*
[문제]
마트에서 오이를 3개씩 묶어서 1500원에 판매한다.
오이가 14개 필요하다면,
필요한 금액을 출력하시오.
단, 오이는 묶음으로만 판매한다.
[정답]
7500
*/
let 필요한오이 = 14
let 오이묶음 = 3
let 오이묶음가격 = 1500
let 필요묶음수 = parseInt(필요한오이 / 오이묶음);
if(필요한오이 % 오이묶음 > 0){
필요묶음수 = parseInt(필요한오이 / 오이묶음) + 1;
}
let 필요액수 = 필요묶음수 * 오이묶음가격;
console.log(필요액수);
document.write(필요액수+"<br>");
</script>
조건문2_문제04_옷구매.html
<script>
/*
[문제]
철수는 상점에서 24600원짜리 옷을 구매했다.
500원짜리 동전으로만 옷값을 낸다면,
동전이 몇 개 필요한지 구하시오.
[정답]
50
*/
let 옷값 = 24600
rs = parseInt(옷값/500);
if(옷값 % 500 != 0){
rs = rs + 1;}
console.log(rs);
document.write(rs +"<br>");
</script>
조건문2_문제05_이상한숫자.html
<script>
/*
[문제]
1부터 100 사이의 랜덤 숫자를 변수 a에 저장한다.
a의 값이 1부터 5 사이이면, num에 1을 저장한 후 출력하시오.
a의 값이 6부터 10 사이이면, num에 6을 저장한 후 출력하시오.
a의 값이 11부터 15 사이이면, num에 11을 저장한 후 출력하시오.
a의 값이 16부터 20 사이이면, num에 16을 저장한 후 출력하시오.
...
...
a의 값이 96부터 100 사이이면, num에 96을 저장한 후 출력하시오.
*/
let a = Math.floor(Math.random() * 100 + 1);
console.log("랜덤숫자" + a);
document.write("랜덤숫자" + a+"<br>");
let rs = 0
if(a % 5 > 0){
rs = a - a % 5 + 1
}
if(a % 5 == 0){
rs = a - 5 + 1
}
console.log(rs);
document.write(rs+"<br>");
console.log("==========================================");
document.write("=========================================<br>")
//다른방법
rs2 = parseInt(a / 5);
if(a % 5 == 0){
rs2 = rs2 - 1
}
rs2 = rs2 * 5 + 1;
console.log(rs2);
document.write(rs2+"<br>");
</script>
조건문2_문제06_일주일.html
<script>
/*
[문제]
이번 달 1일이 수요일이라고 할 때,
랜덤으로 1~31을 저장하고 해당 요일을 출력하시오.
[예]
3일 ==> 금요일
*/
/*
월 화 수 목 금 토 일
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
*/
let a = Math.floor(Math.random() * 31 + 1);
console.log(a);
document.write("오늘날짜<br>" +a + "<br>");
if((a + 7) % 7 == 1){
console.log("수요일");
document.write("수요일");
}
if((a + 7) % 7 == 2){
console.log("목요일");
document.write("목요일");
}
if((a + 7) % 7 == 3){
console.log("금요일");
document.write("금요일");
}
if((a + 7) % 7 == 4){
console.log("토요일");
document.write("토요일");
}
if((a + 7) % 7 == 5){
console.log("일요일");
document.write("일요일");
}
if((a + 7) % 7 == 6){
console.log("월요일");
document.write("월요일");
}
if((a + 7) % 7 == 0){
console.log("화요일");
document.write("화요일");
}
</script>
조건문2_문제07_자리숫자합.html
<script>
/*
[문제]
[1] 10000~90000 사이의 랜덤 숫자 저장한다.
[2] 앞에서부터 두 번째 자리와 네 번째 자릿수의 합을 출력하시오.
[예]
랜덤숫자 : 57249
두 번째 자릿수 : 7
네 번째 자릿수 : 4
합 : 11
*/
let a = Math.floor(Math.random() * 80001 + 10000);
console.log("출력숫자 =" + a);
document.write("출력숫자 =" + a + "<br>" );
let 두번째자릿수 = parseInt(a % 10000 / 1000);
let 네번째자릿수 = parseInt(a % 100 / 10);
console.log("두 번째 자릿수 = " + 두번째자릿수);
document.write("두 번째 자릿수 = " + 두번째자릿수 + "<br>");
console.log("네 번째 자릿수 = " + 네번째자릿수);
document.write("네 번째 자릿수 = " + 네번째자릿수 + "<br>");
합계 = 두번째자릿수 + 네번째자릿수;
console.log("합계 = " + 합계);
document.write("합계 = " + 합계 + "<br>");
</script>
조건문2_문제08_주6일.html
<script>
/*
[문제]
철수는 최근 무인도를 구입하고, 그 나라의 왕이 되었다.
평소 월요병이 있던 철수는 일주일에서 월요일을 삭제하였다.
만약 이번 달 1일이 일요일일 때, 랜덤으로 1~31을 저장하고,
해당 날짜의 요일을 출력하시오.
[예]
1 : 일요일
2 : 화요일
3 : 수요일
4 : 목요일
5 : 금요일
6 : 토요일
7 : 일요일
8 : 화요일
...
*/
let a = Math.floor(Math.random() * 31 + 1);
console.log("오늘날짜 = " + a);
document.write("오늘날짜 = " + a + "<br>");
if((a + 6) % 6 == 1){
console.log("일요일");3
document.write("일요일<br>");
}
if((a + 6) % 6 == 2){
console.log("화요일");
document.write("화요일<br>");
}
if((a + 6) % 6 == 3){
console.log("수요일");
document.write("수요일<br>");
}
if((a + 6) % 6 == 4){
console.log("목요일");
document.write("목요일<br>");
}
if((a + 6) % 6 == 5){
console.log("금요일");
document.write("금요일<br>");
}
if((a + 6) % 6 == 0){
console.log("토요일");
document.write("토요일<br>");
}
let b = Math.floor(Math.random() * 31 + 1);
let 요일 = " "
if((b + 6) % 6 == 1){
요일 = "일요일"
}
if((b + 6) % 6 == 2){
요일 = "화요일"
}
if((b + 6) % 6 == 3){
요일 = "수요일"
}
if((b + 6) % 6 == 4){
요일 = "목요일"
}
if((b + 6) % 6 == 5){
요일 = "금요일"
}
if((b + 6) % 6 == 0){
요일 = "토요일"
}
console.log(b + " : " + 요일);
document.write(b + " : " + 요일 + "<br>");
</script>
조건문2_문제09_페이징.html
<script>
/*
[문제]
랜덤 1~2000 사이의 숫자를 저장하고, 다음과 같이 출력하시오.
랜덤 숫자가
1 ~ 10 사이 값이면, 1
11 ~ 20 사이 값이면, 2
21 ~ 30 사이 값이면, 3
...
101 ~ 110은 사이 값이면, 11
...
1001 ~ 1010 사이 값이면, 101
*/
let a = Math.floor(Math.random() * 2000 + 1);
let 페이징 = 0;
if(a % 10 == 0){
페이징 = parseInt(a / 10);
}
if(a % 10 > 0){
페이징 = parseInt(a / 10) + 1;
}
console.log(a + " : " + 페이징);
document.write(a + " : " + 페이징 + "<br>");
// ===================================================================================
페이징 = parseInt(a / 10);
if(a % 10 > 0){
페이징 = 페이징 + 1
}
console.log(a + " : " + 페이징);
document.write(a + " : " + 페이징);
</script>
조건문3_개념01_최대값.html
<script>
/*
[최대값]
[1] 숫자 3개를 랜덤으로 저장한다. (1~1000 사이의 숫자)
[2] 3개의 랜덤 숫자를 비교한다.
[3] 가장 큰 수(MAX)를 출력한다.
*/
let a = Math.floor(Math.random() * 1000 + 1);
let b = Math.floor(Math.random() * 1000 + 1);
let c = Math.floor(Math.random() * 1000 + 1);
console.log(a + " : " + b + " : " + c);
document.write(a + " : " + b + " : " + c + "<br>");
let max = a
if(max < b){
max = b
}
if(max < c){
max = c
}
console.log("max : " + max);
document.write("max : " + max + "<br>");
</script>
조건문3_개념02_랜덤숫자.html
<script>
/*
[문제]
랜덤으로 숫자 1이나 7을 출력하시오.
*/
let a = Math.floor(Math.random(2) * 2 + 1);
if (a == 2){
a = 7
}
console.log("a =" + a);
document.write("a =" + a + "<br>");
</script>
조건문3_개념03_절댓값.html
<script>
/*
[문제]
랜덤 값 (1~10) 두 개를 저장한다.
앞의 숫자에서 뒤에 숫자를 뺀다.
만약에 값이 음수라면 양수로 변환해서 출력하시오.
*/
let a = Math.floor(Math.random() * 10 + 1);
let b = Math.floor(Math.random() * 10 + 1);
rs = a - b;
if(rs < 0){
rs = rs * -1
}
console.log(a + " , " + b + " : " + rs);
document.write(a + " , " + b + " : " + rs + "<br>");
</script>
조건문3_개념04_가위바위보.html
<script>
/*
[문제]
[1] com은 0~2 사이의 숫자를 랜덤 저장한다.
[2] me는 0~2 사이의 숫자를 랜덤 저장한다.
[3] 가위, 바위, 보를 0, 1, 2 숫자로 대신 표현한다.
[4] com과 me를 비교해서 me를 기준으로 "비김" "승리" "패배"를 출력하시오.
*/
let com = Math.floor(Math.random() * 3);
let me = Math.floor(Math.random() * 3);
console.log(com);
console.log(me);
let com결과 = "가위"
if(com == 2){
com결과 = "보"
}
if(com == 1){
com결과 = "바위"
}
let me결과 = "가위"
if(me == 2){
me결과 = "보"
}
if(me == 1){
me결과 = "바위"
}
//===========================================================================
let 최종결과 = ""
if(com == me){
최종결과 = "비김"
}
if(com == 0 && me == 1){
최종결과 = "플레이어 승리"
}
if(com == 1 && me == 2){
최종결과 = "플레이어 승리"
}
if(com == 2 && me == 0){
최종결과 = "플레이어 승리"
}
if(me == 0 && com == 1){
최종결과 = "컴퓨터 승리"
}
if(me == 1 && com == 2){
최종결과 = "컴퓨터 승리"
}
if(me == 2 && com == 0){
최종결과 = "컴퓨터 승리"
}
console.log("나 :" + me결과 + " vs " + "컴퓨터 :" + com결과);
document.write("나: " + me결과 + " vs " + "컴퓨터: " + com결과 + "<br>");
console.log(최종결과);
document.write(최종결과 + "<br>");
</script>
조건문3_문제01_과락.html
<script>
/*
[문제]
[1] 0에서 100 사이의 랜덤 점수 2개를 저장해 평균을 구한다.
[2] 평균이 60점 이상이면 합격, 60점 미만이면 불합격이다.
[3] 단, 평균이 60 이상이라도, 한 과목이라도 50 미만이면 불합격을 출력하시오.
*/
let a = Math.floor(Math.random(2) * 101);
let b = Math.floor(Math.random(2) * 101);
let av = (a + b) / 2;
let rs = "불합격"
if(av >= 60){
rs = "합격"
}
if(a < 50 || b < 50){
rs = "불합격"
}
console.log("a : " + a + "b : " + b);
console.log(rs);
document.write("a : " + a + " b : " + b + "<br>")
document.write(rs+"<br>");
</script>
조건문3_문제02_랜덤369.html
<script>
/*
[문제]
[1] 1~99 사이의 랜덤 숫자를 저장한다.
랜덤 숫자 중에서 3이나 6이나 9의 개수가
[2-1] 2개이면, 짝짝을 출력한다.
[2-2] 1개이면, 짝을 출력한다.
[2-3] 0개이면, 해당 숫자를 출력하시오.
[예]
33 ==> 짝짝
16 ==> 짝
7 ==> 7
*/
let a = Math.floor(Math.random() * 99 + 1);
let b = parseInt(a / 10);
let c = parseInt(a % 10);
let tik = 0
if(b == 3 || b == 6 || b == 9){
tik = tik + 1
}
if(c == 3 || c == 6 || c == 9){
tik = tik + 1;
}
if(tik == 2){
console.log("짝짝");
document.write("짝짝<br>");
}
if(tik == 1){
console.log("짝");
document.write("짝<br>");
}
if(tik == 0){
console.log(a);
document.write(a+"<br>")
}
</script>
조건문3_문제03_연속짝수복권.html
<script>
/*
[문제]
100~900 사이의 랜덤숫자를 출력한다.
세 자리의 숫자를 전부 한 자리씩 분리한다.
[규칙]
[1] 세 자리 모두 짝수이면 "1등"을 출력한다.
[2] 두 자리가 짝수이고, 짝수인 숫자가 연속이면 "2등"을 출력한다.
[3] 그 외는 "꽝"을 출력한다.
[4] 단, 0은 짝수이다.
[예]
462 ==> 4,6,2 세 자리 모두 짝수이므로 ==> 1등
245 ==> 2,4,5 두 자리가 짝수이고 2, 4연속이므로 ==> 2등
456 ==> 4,5,6 두 자리가 짝수이지만 연속이 아니므로 ==> 꽝
782 ==> 7,8,2 두 자리가 짝수이고 8, 2연속이므로 ==> 2등
*/
let a = Math.floor(Math.random(2) * 801 + 100);
let b = parseInt(a / 100);
let c = parseInt(a % 100 / 10);
let d = parseInt(a % 10);
let tik = 0
if(b % 2 == 0 && c % 2 == 0 && d % 2 == 0){
tik = tik + 1
}
if(b % 2 == 0 && c % 2 == 0 || c % 2 == 0 && d % 2 ==0){
tik = tik + 1
}
if(tik == 2){
console.log("1등");
document.write("1등<br>");
}
if(tik == 1){
console.log("2등");
document.write("2등<br>");
}
if(tik == 0){
console.log("꽝");
document.write("꽝<br>");
}
console.log(a);
</script>
조건문3_문제04_최소값.html
<script>
/*
[최대값]
[1] 숫자 3개를 랜덤으로 저장한다. (-100 ~ 100 사이의 숫자)
[2] 3개의 랜덤 숫자를 비교한다.
[3] 가장 작은 수(MIN)를 출력하시오.
*/
let a = Math.floor(Math.random() * 201 - 100);
let b = parseInt(a / 100);
let c = parseInt(a % 100 / 10);
let d = parseInt(a % 10);
console.log(b + "," + c + "," + d);
let ex = b;
if(ex > c){
ex = c ;
}
if(ex > d){
ex = d ;
}
console.log("수" + a);
console.log(ex);
document.write(ex+"<br>");
</script>
조건문3_문제05_학점.html
<script>
/*
[문제]
0에서 100 사이의 랜덤 숫자를 시험 점수로 저장한다.
시험점수에 해당하는 학점을 출력하시오.
아래는 점수표이다.
100~91 이면 A학점,
90~81 이면 B학점,
80 이하는 "재시험"
단, 만점이거나, A 학점과 B 학점의 일의 자리가 8점 이상이면
+ 기호를 추가하시오.
[예]
100 => A+
88 ==> B+
82 ==> B
23 ==> 재시험
*/
let a = Math.floor(Math.random() * 101);
console.log(a);
let 성적 = " "
if(a <= 80){
성적 = "재시험"
}
if(a >= 81 && a <= 87){
성적 = "B"
}
if(a >= 88 && a <= 90){
성적 = "B+"
}
if(a >= 91 && a <= 97){
성적 = "A"
}
if(a >= 98 && a <= 100){
성적 = "A+"
}
console.log(성적);
document.write(성적 +"<br>");
</script>
조건문4_개념01_엘스.html
<script>
/*
[조건문 옵션 else]
[1] 조건문 if 의 옵션이며, 단독으로 사용할 수 없다.
[2] if 조건이 거짓일 때 동작한다.
*/
/*
[문제]
변수 a의 값이 홀수이면 "홀수", 짝수이면 "짝수"를 출력하시오.
*/
let a = Math.floor(Math.random() * 20 + 1);
console.log(a);
if(a % 2 == 1){
console.log("홀수");
document.write("홀수<br>");
} else {
console.log("짝수");
document.write("짝수<br>");
}
</script>
조건문4_개념02_엘스_로그인.html
<script>
/*
[회원가입과 로그인]
1. 가입된 아이디와 비번과 로그인시 입력한 아이디와 비밀번호를 비교한다.
2. "로그인 성공" 또는 "로그인 실패" 를 출력하시오.
*/
let joinId = "1234"
let joinPw = "1q2w3e4r"
let logId = "1234"
let logPw = "1q2w3e4r"
if(joinId == logId && joinPw == logPw){
console.log("로그인 성공");
document.write("로그인 성공<br>");
} else {
console.log("로그인 실패");
document.write("로그인 실패<br>");
}
</script>
조건문4_개념03_엘스_배수.html
<script>
/*
[문제]
변수에 1~100 사이의 숫자를 랜덤으로 저장한다.
해당 숫자의 값이 4의 배수이면 true,
4의배수가 아니면 false 출력하시오.
*/
let a = Math.floor(Math.random() * 100 + 1);
console.log(a);
if(a % 4 == 0){
console.log("true")
document.write("true")
} else {
console.log("false");
document.write("false");
}
</script>
조건문4_개념04_엘스주의점.html
<script>
/*
[else 주의점]
else 는 if 문 한개만 연결이 된다. 아래와 같은 상황을 조심해야 한다.
[문제]
랜덤으로 1~5 사이의 숫자를 저장한다.
1이면 "아메리카노" 출력
2이면 "까페라떼" 출력
3이면 "모카라떼" 출력
그 외는 "기타"를 출력
*/
/*
[설명]
랜덤값이 1 이나 2일 때를 살펴보면 메세지가 두 개가 출력이 된다.
else는 if 한개만 연결되기 때문에 경우의 수가 두 개일 때만 사용한다.
*/
let a = Math.floor(Math.random() * 5 + 1);
if(a == 1){
console.log("아메리카노");
document.write("아메리카노<br>");
}
if(a == 2){
console.log("까페라떼");
document.write("까페라떼<br>")
}
if(a == 3){
console.log("모카라떼")
document.write("모카라떼<br>")
} else {
console.log("기타");
document.write("기타<br>");
}
</script>
조건문4_개념05_엘스이프.html
<script>
/*
[if 의 옵션 else if]
if의 두 번째 옵션으로 else의 경우 경우의 수가 두 개일 경우만 사용할 수 있다.
경우의 수가 두 개 이상일 때는 else if를 사용한다.
[else if]
[1] 항상 if와 함께 사용하며, 단독으로 사용할 수 없다.
[2] if의 조건이 거짓이면 동작한다.
[3] 조건이 여러 개일 때 사용한다.
[4] else if를 여러 개 사용한 경우 위에서부터 순차적으로 비교하며
중간에 else if 조건이 참인경우 아래있는 else if는 전부 무시된다.
*/
// if 가 거짓일때 동작하며, 만약 if가 사실인 경우
// 아래 else if는 내용이 사실이라도 동작하지않는다.
let a = Math.floor(Math.random() * 3 + 1);
if(a == 3){
console.log("탄산수");
document.write("탄산수<br>");
}
else if(a == 2){
console.log("제로콜라");
document.write("제로콜라");
}
else if(a == 1){
console.log("레모네이드");
document.write("레모네이드<br>");
}
</script>
조건문4_개념06_엘스이프_엘스.html
<script>
/*
[elif 와 else]
if에 추가 조건을 사용하기 위해 else if를 사용한 경우 else 또한 사용가능하다.
단, else는 문맥상 가장 마지막에만 사용할 수 있다.
다음 가위바위보 식을 보면 기존식에선 조건이 7개 이었는데
조건을 5개로 줄인걸 확인할 수 있다.
*/
/*
[가위(0) 바위(1) 보(2) 게임]
[1] com 은 0~2 사이의 숫자를 랜덤 저장한다.
[2] me 는 0~2 사이의 숫자를 랜덤 저장한다.
[3] 가위,바위,보를 0,1,2 숫자로 대신 표현한다.
[4] com과 me를 비교해서 "비김" "승리" "패배" 를 출력한다.
*/
let a = Math.floor(Math.random() * 3);
let b = Math.floor(Math.random() * 3);
if(a == b){
console.log("비겼다");
document.write("비겼다<br>");
}
else if(a == 0 && b == 2){
console.log("내가 이겼다");
document.write("내가 이겼다<br>");
}
else if(a == 1 && b == 0){
console.log("내가 이겼다");
document.write("내가 이겼다<br>");
}
else if(a == 2 && b == 1){
console.log("내가 이겼다");
document.write("내가 이겼다<br>");
}
else {
console.log("내가 졌다");
document.write("내가 졌다");
}
</script>
조건문4_개념07_switch.html
<script>
/*
[switch 문]
- if문과 거의 유사하나, if 는 == 이외에 > 크다 , < 작다 등도 활용할수있지만,
- switch 문은 오로지 == 같다만 적용된다.
*/
let a = Math.floor(Math.random()* 10 + 1);
switch(a){
case 1:
console.log(1);
break;
case 2:
console.log(2);
break;
case 3:
console.log(3);
break;
case 4:
console.log(4);
break;
default :
console.log("없는 값 입니다");
break;
}
if(a == 1){
console.log(1);
}
else if(a == 2){
console.log(2);
}
else if(a == 3){
console.log(3);
}
else if(a == 4){
console.log(4);
}
else {
console.log("없는 값 입니다");
}
</script>
조건문4_개념08_삼항연산자.html
<script>
/*
[삼항 연산자]
if문을 한줄로 표시한 것이다.
if(a == 10) {
result = "참";
} else {
result = "거짓";
}
삼항연산자로 표시하면
result = a == 10 ? "참" : "거짓";
*/
let a = Math.floor(Math.random() * 2 + 1);
let rs = " "
if(a == 1){
rs = "참"
} else {
rs = "거짓"
}
console.log(rs);
rs = a == 1 ? "참" : "거짓";
console.log(rs);
</script>
조건문4_개념09_중첩if문.html
<script>
// 로그인
// 1. 아이디를 확인해주세요.
// 2. 비밀번호를 확인해주세요.
// 3. 로그인 성공!
let joinId = "qwer";
let joinPw = "1234";
let loginId = "qwer";
let loginPw = "1234";
// 1(아이디 오류) 2(비번 오류) 3(로그인 성공)
let rs = 1;
if(joinId == loginId){
if(joinPw == loginPw)
rs = 3;
} else {
rs = 2;
}
switch(rs){
case 1:
console.log("아이디 오류!")
break;
case 2:
console.log("비밀번호 오류!")
break;
case 3:
console.log("로그인 성공")
}
</script>
조건문4_문제01_당첨.html
<script>
/*
[문제]
1. 1~100 사이의 랜덤 숫자를 저장한다.
2. 7의 배수이고 짝수이며 50보다 작으면 당첨을 출력한다.
3. 위에 해당하지 않으면 꽝을 출력한다.
*/
let a = Math.floor(Math.random() * 100 + 1);
if (a % 7 == 0 && a % 2 == 0 && a < 50){
console.log("당첨");
document.write("당첨<br>");
} else{
console.log("꽝");
document.write("꽝<br>");
}
//================================================================
let num = parseInt(Math.random() * 100) + 1; // [0 ~ 99] + 1
console.log("num = " + num);
document.write("num = " + num + "<br>");
if(num % 7 == 0 && num % 2 == 0 && num < 50) {
console.log("당첨");
document.write("당첨<br>");
} else {
console.log("꽝");
document.write("꽝<br>");
}
/*
[문제]
위 식을 오로지 if문으로만 작성해 풀이하시오.
*/
if(num % 7 == 0 && num % 2 == 0 && num < 50) {
console.log("당첨");
document.write("당첨<br>");
}
if(num % 7 > 0 || num % 2 > 0 || num >= 50){
console.log("꽝")
document.write("꽝<br>");
}
</script>
조건문4_문제02_가위바위보.html
<script>
/*
[문제]
[1] com은 0~2 사이의 숫자를 랜덤 저장한다.
[2] me는 0~2 사이의 숫자를 랜덤 저장한다.
[3] 가위, 바위, 보를 0, 1, 2 숫자로 대신 표현한다.
[4] com과 me를 비교해서 me를 기준으로 "비김" "승리" "패배"를 출력하시오.
*/
let a = Math.floor(Math.random() * 3);
let b = Math.floor(Math.random() * 3);
let rs = " "
if(a == b){
rs = "비겼다"
}
else if(a == 0 && b == 2){
rs = "내가 이겼다!"
}
else if(a == 1 && b == 0){
rs = "내가 이겼다!"
}
else if(a == 2 && b == 1){
rs = "내가 이겼다!"
}
else {
rs = "내가 졌다..."
}
console.log(rs);
document.write(rs+"<br>");
/*
[문제]
위 식을 오로지 if문으로만 작성해 풀이하시오.
*/
if(a == b){
rs = "비겼다"
}
if(a == 0 && b == 2){
rs = "내가 이겼다!"
}
if(a == 1 && b == 0){
rs = "내가 이겼다!"
}
if(a == 2 && b == 1){
rs = "내가 이겼다!"
}
if(a == 0 && b == 1){
rs = "내가 졌다..."
}
if(a == 1 && b == 2){
rs = "내가 졌다..."
}
if(a == 2 && b == 0){
rs == "내가 졌다..."
}
console.log(rs);
document.write(rs +"<br>");
</script>
조건문4_문제03_적정체중.html
<script>
/*
[문제]
1. 100 ~ 200 사이의 랜덤 숫자를 height 변수에 저장한다.
2. 30 ~ 150 사이의 랜덤 숫자를 weight 변수에 저장한다.
3. 적정 체중인지 확인하기 위한 아래 공식을 적용해
적정체중 = (신장 - 100) * 0.9
적정체중 - 5 <= 본인 체중 <= 적정체중 + 5
4. "적정 체중입니다" 또는 "적정 체중이 아닙니다" 를 출력하시오.
위 문제를 삼항연산자 문법을 사용해 풀어보시오.
*/
let 키 = Math.floor(Math.random() * 101 + 100);
let 무게 = Math.floor(Math.random() * 121 + 30);
let 적정체중 = (키 - 100) * 0.9
let result = 적정체중 - 5 <= 무게 && 무게 <= 적정체중 + 5;
result = result ? "적정 체중입니다" : "적정 체중이 아닙니다";
console.log(result);
console.log("키 : " + 키 + " 무게 : "+ 무게 +" 적정체중 : "+적정체중);
let rs = 3
if(무게 >= (적정체중 - 5)){
if(무게 <= (적정체중 + 5))
rs = 2
} else {
rs = 1
}
console.log(rs);
switch(rs){
case 1:
console.log(무게 + " 저체중입니다.")
break;
case 2:
console.log(무게 + " 적정 체중입니다.")
break;
case 3:
console.log(무게 + " 과체중입니다")
break;
}
</script>
조건문4_문제04_주석1.html
<script>
/*
[문제]
다음 주석 안에 있는 식의 결과를 미리 예측해보고
주석을 풀고 결과를 확인하시오.
*/
/*
let a = 10;
if(a == 10) {
console.log("a는 10이다.");
document.write("a는 10이다.<br>");
}
if(a == 11) {
console.log("a는 11이다.");
document.write("a는 11이다.<br>");
}
if(a == 12) {
console.log("a는 12이다.");
document.write("a는 12이다.<br>");
} else {
console.log("else 구문이다.");
document.write("else 구문이다.<br>");
}
*/
let a = 10;
if(a == 10) {
console.log("a는 10이다.");
document.write("a는 10이다.<br>");
}
if(a == 11) {
console.log("a는 11이다.");
document.write("a는 11이다.<br>");
}
if(a == 12) {
console.log("a는 12이다.");
document.write("a는 12이다.<br>");
} else {
console.log("else 구문이다.");
document.write("else 구문이다.<br>");
}
</script>
조건문4_문제05_주석2.html
<script>
/*
[문제]
다음 주석 안에 있는 식의 결과를 미리 예측해보고
주석을 풀고 결과를 확인하시오.
*/
/*
let a = 63;
if(a <= 50) {
console.log("a는 50 이하이다.");
document.write("a는 50 이하이다.<br>");
} else if(a <= 60) {
console.log("a는 60 이하이다.");
document.write("a는 60 이하이다.<br>");
} else if(a <= 70) {
console.log("a는 70 이하이다.");
document.write("a는 70 이하이다.<br>");
} else {
console.log("else 구문이다.");
document.write("else 구문이다.<br>");
}
*/
let a = 63;
if(a <= 50) {
console.log("a는 50 이하이다.");
document.write("a는 50 이하이다.<br>");
} else if(a <= 60) {
console.log("a는 60 이하이다.");
document.write("a는 60 이하이다.<br>");
} else if(a <= 70) {
console.log("a는 70 이하이다.");
document.write("a는 70 이하이다.<br>");
} else {
console.log("else 구문이다.");
document.write("else 구문이다.<br>");
}
</script>
조건문4_문제06_학점.html
<script>
/*
[문제]
0에서 100 사이의 랜덤 숫자를 시험 점수로 저장한다.
시험점수에 해당하는 학점을 출력하시오.
아래는 점수표이다.
100~91 이면 A학점,
90~81 이면 B학점,
80 이하는 "재시험"
단, 만점이거나, A 학점과 B 학점의 일의 자리가 8점 이상이면 + 기호를 추가하시오.
[예]
100 => A+
88 ==> B+
82 ==> B
23 ==> 재시험
*/
let a = Math.floor(Math.random()*101);
console.log(a);
if (98 <= a){
console.log("A+");
} else if ( 90 < a){
console.log("A");
} else if ( 88 <= a){
console.log("B+");
} else if (80 < a){
console.log("B");
} else {
console.log("재시험");
}
/*
[문제]
위 식을 오로지 if문으로만 작성해 풀이하시오.
*/
if(0 <= score && score <= 80) {
console.log("재시험");
document.write("재시험<br>");
}
if(81 <= score && score <= 87) {
console.log("B");
document.write("B<br>");
}
if(88 <= score && score <= 90) {
console.log("B+<br>");
document.write("B+<br>");
}
if(91 <= score && score <= 97) {
console.log("A<br>");
document.write("A<br>");
}
if(98 <= score && score <= 100) {
console.log("A+<br>");
document.write("A+<br>");
}
</script>