본문 바로가기

COA Lab's JS

자바스크립트 5 - 연습문제 ( if | switch | 삼항연산자)

아래 문제를 풀어보면서 연습~!

문제1. 1주일에 7000보이상 걸으면, 건강한 습관을 가지셨군요,  그렇지않으면, 운동을 좀 하세요~!

let walkNum = Number(prompt('1주일에 몇보 이상 걷나요?', ''));
 if(walkNum >= 7000){
     document.write('건강한 습관을 가지셨군요<br>');
 }else{
     document.write('운동을 좀 하세요~!<br>');
 }

문제2. 1주일에 음주를 몇회 하시나요? 3회 이상 : 경고~!

let drinkNum = Number(prompt('1주일에 음주를 몇회 하시나요?', ''));
 if(drinkNum >= 3){
     document.write('음주를 줄여야 겠네요~!<br>');
 }
 document.write('좋은 습관을 가졌네요~!<br>');

문제3. 키와 몸무게를 입력받아서 출력

더보기


확인할 내용~!!!
 prompt는 문자를 반환하는데, 여기서는 그냥 avg를 계산하네.그렇다면 확인
빈문자열은 0과 같다고 했음
문자와 숫자간의 +는 연결연산자로 됨
문자와 숫자간의 -,*,/는 연산하여 줌
문자열앞에 +기호를 붙이면 number로 반환


확인할 내용~!!!
 prompt는 문자를 반환하는데, 여기서는 그냥 avg를 계산하네.그렇다면 확인
빈문자열은 0과 같다고 했음
문자와 숫자간의 +는 연결연산자로 됨
문자와 숫자간의 -,*,/는 연산하여 줌
문자열앞에 +기호를 붙이면 number로 반환

 (키-100)*0.9 보다 적으면 [미달~!]
 (키-100)*0.9 보다 많으면 [초과~!]
 let height = prompt('당신의 키는?','');
 let weight = prompt('당신의 몸무게는?','');
 let avg = (height-100)*0.9;
 
 console.log(typeof(height));
 console.log(typeof(''));
 console.log(typeof('10'+1));
 console.log(typeof('10'-1));
 console.log(typeof('10'*1));
 console.log(typeof('10'/1));
 console.log(typeof(+'10'+1));

문제4. 평균몸무게보다 5이상,5이하이면 적정몸무게, 아니면 아님 출력

document.write('당신의 평균 몸무게는 : ' + avg + '입니다. <br>');
 weight >= avg-5 && weight <= avg+5 ? alert('적정몸무게군요') : alert('적정몸무게가 아닙니다.');

 let rs1 = avg - weight;
 document.write('평균몸무게와 당신의 몸무게의 차이 : ' + rs1 + '입니다. <br>');
 if(avg > weight){
     document.write(rs1 + 'kg 미달입니다. ');
 }else{
     document.write(Math.abs(rs1) + 'kg 초과입니다. ');
 }

 

문제 5. 아이디와 비번을 입력받아, 조건에 맞으면 
 id와 user_id 비교 + pw와 user_pw 비교
     ->user_id 님 반갑습니다.
     ->비밀번호가 일치하지 않습니다.
     ->아이디가 일치하지 않습니다.

let id = 'admin';
 let pw = '1234';
 let user_id = prompt('아이디를 입력하세요','');
 let user_pw = prompt('비번을 입력하세요','');
 if(id == user_id){
     if(pw == user_pw){
         document.write(user_id  + '님 반갑습니다. <br>');
     }else{
         document.write('비밀번호가 일치하지 않습니다.. <br>');                
     }
 }else{                
         document.write('아이디가 일치하지 않습니다. <br>');
 }

문제6. 11시 이전이면 아침입니다. 11~15사이면 점심, 15시 이후면 저녁~!

 let date = new Date();//년월일시분초를 담고 있는 내장객체 Date()
 let hour = date.getHours();//Date()객체안에서 현재시간정보
 console.log(hour);
 if(hour<11){
     document.write('아침입니다.');
 }else{
     if(hour<15){
         document.write('점심먹자아아~~');
     }else{
         document.write('저녁입니다.');
     }
 }

 


문제 7. 숫자를 입력받아 양수인지, 0인지, 음수인지 출력

 let num = prompt('숫자를 입력하세요', '');
 if(num>0){
     alert('양수입니다.');
 }else if(num == 0){
     alert('0입니다.');
 }else{
     alert('양수입니다.');
 }

문제 8. 숫자를 입력받아 짝수인지 홀수인지 확인

 if(num%2 == 0){
     alert('짝수입니다.');
 }else{
     alert('홀수입니다.');
 }
 let kor = prompt('국어점수를 입력','');
 let eng = prompt('영어점수를 입력','');
 let math = prompt('수학점수를 입력','');
 let avg = (Number(kor)+Number(eng)+Number(math))/3;

        


문제 14. 삼항사용 합|불합 알림

let rs = avg>=70 && kor>=50 && eng>=50 && math >=50;
 rs ? alert('합격입니다. ') : alert('불합격입니다. ');

 if(avg>=90){
     document.write("당신의 평균은 "+ avg +"이며, [수]입니다.");
 }else if(avg>=80){
     document.write("당신의 평균은 "+ avg +"이며, [우]입니다.");
 }else if(avg>=70){
     document.write("당신의 평균은 "+ avg +"이며, [미]입니다.");
 }else if(avg>=60){
     document.write("당신의 평균은 "+ avg +"이며, [양]입니다.");
 }else{
     document.write("당신의 평균은 "+ avg +"이며, [가]입니다.");
 }

 


 

문제 9. hour<11 | 11<hour<15 | 나머지

문제9.hour<11 | 11<hour<15 | 나머지
 let date = new Date();
 var hour = date.getHours();

 switch(true){
     case  hour<11:
         alert('아침먹을 시간');
         break;
     case hour<15 :
         alert('점심먹을 시간');
         break;
     default :
         alert('저녁먹을 시간');
         break;
 }

 let num = 200;
 switch(num){
     case 200 :
         alert('비번이 맞습니다.');
         break;
     case 150 : 
         alert('비번이 틀렸습니다.');
         break;
     default :
         alert('사용이 제한되었습니다.');
         break;
 }

 

문제10. location객체를 활용해서 입력받은 페이지로 연결해주세요

문제10. location객체를 활용해서 입력받은 페이지로 연결해주세요(location.href = 값; )
 let site = prompt('네이버, 다음, 구글 중에서 고르시오','');                
 switch(site){
     case '네이버':
         location.href = 'https://www.naver.com/';
         break;
     case '다음':
         location.href = 'https://www.daum.net/';
         break;
     case '구글':
         location.href = 'https://www.google.co.kr/';
         break;
     default :
         alert('네이버, 다음, 구글 중에 입력하세요');
         break;
 }

문제11. 숫자가 짝수인지 홀수인지, 숫자가 아닌지 확인

 let num = prompt('숫자를 입력하세요','');
 console.log(typeof(num));
 switch(num%2){
     case 0:
         alert('짝수입니다.');
         break;
     case 1:
         alert('홀수입니다.');
         break;
     default :
         alert('숫자입력하세요.');
         break;
 }

문제 12. 삼항 사용하여 자연수인지.

let num = Number(prompt('숫자를 입력하세요', ''));
 num>0 ? document.write('자연수입니다.') : document.write('자연수가 아닙니다.');

문제 13. 삼항 사용 확인, 취소가 true, flase 중 어느것인지 확인

let result = confirm('확인이나 취소를 누르세요');
 let text = result? '확인을 누르셨군요':'취소를 누르셨군요';
 document.write(text);

추가설명 14. 짧은 조건문

// true && console.log('참일때 실행하는 조건문'); 
// false && console.log('참일때 실행하지 않는 조건문');        
// true || console.log('참일때 실행하지 않는 조건문');
// false || console.log('거짓일때 실행하는 조건문');