/*
	JS 연산자
		1. 산술 연산자 : +더하기 - 빼기 *곱하기 /나누기 %나머지
		2. 연결 연산자 : +
			숫자 + 숫자 : 산술 / 문자+숫자 : 연결 / 문자+문자 : 연결
		3. 비교 연산자 : > 초과[크다] / < 미만[작다] / >=이상[크거나 같다] / <= 이하[작거나 같다] 
						== 같다.[데이터만 비교]/ ===같다[자료형/데이터 비교] /!= 같지 않다. 
						!==같지않다.[데이터/자료형 비교]
						
		4. 관계 연산자 : 비교 연산자가 2개 이상일 때
					&& : and 이면서 면서 이고 모두 그리고 [비교 연산자 결과가 모두 참이면 참]
					|| : or 이거나 거나 또는 하나라도  [비교 연산자 결과가 하나라도 참이면 참]
					! : 부정 반대 [비교 연산자 결과가 모두 참이면 부정, 부정이면 참]
					
		5. 대입 연산자 :
					= 대입[오른쪽에서 왼쪽으로 대입]
					+= 더한 후에 대입 [오른쪽 데이터를 왼쪽에 더한 후 대입]
						변수명 = 변수명 + 3 vs. 변수명 += 3
					-=, *=, /=, %=
 */

 //1. 산술 연산자
console.log(3+3) //숫자 + 숫자 => 숫자 
console.log('더하기 : ' +3 + 3 ); //문자 + 숫자 => 문자 + 숫자 => 문자
console.log('더하기 :' +(3+3)); //[괄호] 숫자 + 숫자 => 숫자 + 문자 => 문자
console.log('빼기 :' +(3-2));  //3 - 2 =1
console.log('곱하기 :' +(3*3)); // 3 x 3 = 9
console.log('나누기 :' +(3/2));  //3 / 2 = 몫 1
console.log('나머지 :' +(3%2));  // 3 % 2 = 나머지 1
    

//2. 비교 연산자
console.log('초과 : ' + (10>3));  //true
console.log('미만 : ' + (10<3));  //false
console.log('이상 : ' + (10>=3)); //true
console.log('이하 : ' + (10<=3)); //false
console.log('같다 : ' + (10==3)); //false
console.log('같지 않다. : ' + (10!=3)); //false

//3.관계 연산자
console.log('이면서 : ' + (10>3 && 10>5)); // T and T => T
console.log('이거나 : ' + (10>3 || 10<5)); //T or F => T
console.log('부정 : ' + !(10>3)); // T =>(부정) F

//4.대입 연산자
let data1 = 10;

data1 += 2;
console.log(" += 대입 후 : " + data1)

data1 -= 5;
console.log(" -= 대입 후 : " + data1)

data1 *= 2;
console.log(" *= 대입 후 : " + data1)

data1 /= 3;
console.log(" /= 대입 후 : " + data1)

data1 %= 5;
console.log(" %= 대입 후 : " + data1)

/*
 	입력 
 		1. confirm('메시지') : 확인(true)/ 취소(false) 입력받는 메시지 
 		2. prompt('메시지') : 데이터 입력받는 메시지
 		
	입력받은 데이터 저장[변수]
		let 변수 = confirm("메시지");
		let 변수 = prompt("메시지");

	숫자형 입력받을 때 
		Number(prompt('메시지'))

	논리형을 입력받을 때 
		Boolean(prompt('메시지'))

	문자형을 입력받을 때
		prompt('메시지')
	
 */

/* 1. confirm("실행하시겠습니까?");*/

//1. 입력 메시지에 대한 확인/취소 결과를 변수에 저장 
let result1 =  confirm("실행하시겠습니까?");
console.log("결과 1 : " +result1);

/* 2. prompt('데이터 입력')*/

//2. 입력 메시지에 입력된 데이터를 변수에 저장
let result2 =   prompt('데이터 입력');
console.log("결과 2 : " +result2);

문제

/*
	문제1.
		1. 국어, 영어, 수학 점수를 입력받아 변수에 저장
		2. 총점 출력 , 평균 출력
*/

let k_score = Number(prompt("국어점수를 입력해주세요."));

let e_score = Number(prompt("영어점수 입력해주세요."));

let m_score = Number(prompt("수학점수 입력해주세요."));

let total_score = (k_score + e_score + m_score)
let avg_score = (k_score + e_score + m_score)/3;

console.log("총점 :" + total_score + " 평균 : " + avg_score);
/*
	문제2 : prompt 함수로 반지름을 입력받아서 원넓이[(반지름 x 반지름) x 3.14] 출력
	
*/

let radius = Number(prompt("반지름을 입력해주세요."));

let circle = radius * radius * 3.14;
console.log("원의 넓이 :" + circle);
/*
	문제 3 : prompt 함수로 두 실수를 입력받아서 앞 실수의 값이 뒤 실수의 값의 몇%인지 출력
		- 54.5 84.8 64% (앞 실수의 값이 뒤 실수의 값의 몇 %인지)
 */

let number3_1 = Number(prompt("첫번째 실수를 입력해주세요."));

let number3_2 = Number(prompt("두번째 실수를 입력해주세요."));

console.log((number3_1/number3_2)*100);
/*
 	문제 4 : prompt 함수로 정수를 입력받아 홀수[true] 짝수[false] 여부 출력 ]
 */
 let number4 = Number(prompt("정수를 입력해주세요."));
 
 console.log(Boolean(number4%2));
/*
 	문제 5 : prompt 함수로 정수를 입력받아 7배수면[true] 7배수 아니면[false 여부 출력 ]
*/
 
let number5 = Number(prompt("정수를 입력해주세요."));
  
console.log(Boolean(!number5%7));
// 문제 6 : prompt 함수로 십만원 단위의 금액을 입력받아 지폐 개수 세기 [천원까지만]
// 몫을 구하는 방법 [parseInt()]
 
  
let price = Number(prompt("십만원 단위의 금액을 입력해주세요."));

console.log("십만원 : " + parseInt(price/100000) + "장");
console.log("만원 : " + parseInt((price%100000)/10000)+ "장");
console.log("천원 : " + parseInt(((price%100000)%10000)/1000)+ "장");
/*
	문제 7 : prompt로 아이디와 비밀번호를 입력받아 아이디가 admin이고 비밀번호가 1234이면 true 출력 
	아니면 false 출력
 */

let id = prompt("아이디를 입력해주세요.");
let password = prompt("비밀번호를 입력해주세요.");

console.log("로그인 : " + ((id=="admin")&&(password==1234)));
/*
	문제8 : prompt 함수로 정수를 입력받아 홀수이면서 7의 배수이면 true
*/ 

let number8 = Number(prompt("정수를 입력해주세요."));

console.log(((number8%2==1)&&(number8%7==0)));
let html = '<h3> JS 작성된 코드 </h3>' //html 마크업 저장할 변수 선언
html += '<div> 안녕하세요 </div>'  //변수에 마크업 추가
document.write(html); //해당 변수를 html 출력

Untitled

/*	6. 증감 연산자 :
					변수++ [후위 1증가] 변수--[후위 1감소]
					++변수 [선위 1증가] --변수[선위 1감소]
					
		-> [변수++] = [변수+=1] = [변수 = 변수 + 1]
		
		7. 삼항 연산자 : 만약에 조건이 참[true]이면 참 반환 / 거짓[false]이면 거짓 반환
					1. 조건 ? 참 : 거짓
						ex) 나이>=19 ? '성인' : '청소년'
					2. 중첩
						조건1 ? 참1 : 
							조건2 ? 참2 :
								 조건3 ? 참3 : 거짓
						ex)나이 <= 19 ? '청소년' :
												나이 <= 40 ? '청년' :
																나이 <= 60 ? '중년' : '노년'
*/

//5. 증감 연산자
let data2 = 10;
console.log("변수 값 : " + data2) //10
console.log("변수++ : " + (data2++) ) //10 : 출력 후 증가
console.log("변수 값 : " + data2)  //11
console.log("++변수 : " + ++(data2++)) //12 : 출력 전 증가

console.log("변수-- :" + (data2--)) //12 : 출력 후 감소
console.log("변수 값 : " + data2) //11
console.log("--변수" + (--data2)) //10 : 출력 전 감소
console.log("변수 값 : " + data2) //10

//6. 삼항 연산자 [조건 ? 참 : 거짓]
let age = 38;
let 나이대 = age <= 19 ? '청소년' : '성인' // 조건이 false니까 '성인' 대입
console.log("38의 나이대 : " + 나이대)

let 점수 = 78;
let 등급 = 점수 >= 90 ? 'A등급' : 점수 >= 80 ? 'B등급' : 점수>=70 ? 'C등급' : '탈락'

console.log('78점수의 등급 : ' + 등급);