국비수업4(조건문)

자바스크립트&제이쿼리 국비수업(그린컴퓨터학원) 내용 중 조건문 대해서 정리해보자

조건문

if(조건) {할일}

  • 조건문 : 주어진 조건의 결과에 따라 동작하도록 하는 방법
  • 문법 : if(조건){할일}
  • 의미 : 만약에 괄호 안의 조건이 참이라면 중괄호 안에 들어가서 할 일을 하고, 조건이 거짓이라면 중괄호 안에 들어가지 못하고 다음으로 넘어감
  • 예시
   if(10>9){
       alert("참");
   }

   if(!""){
      alert("참");
     }

    if(-20){
       alert("참");
    }

    if(0){
       alert("참");
    }

    if(!0){
       alert("참");
    }

    var a = 10;
    if(a>5){
        alert("참");
    }

    var a = 10;
    a = 4
    if(a>5){
        alert("참");
    }


    var age = Number(prompt("당신의 나이는 몇 살입니까?"));
        if(age>30){
            alert("당신은 입장할 수 없습니다");
        } else{
            alert("어서 들어오세요. 환영합니다.")
        }

if...else if

  • else는 if 나머지 가능성
  • 문법 : if(조건){할일1}else{할일2}
  • 의미 : 괄호 안의 조건의 결과가 참이면 할일1을 실행. 조건이 거짓이라면 할일2를 실행
  • 양자택일 구문 : 둘 중에 한 곳은 무조건 실행되는 구문

if...else if...else

  • 문법 : if(조건1){할일1}
    else if(조건2){할일2}
    else{}
    if(true){
        alert("참1");
    } else if(true)) {
        alert("참2");
    } else {
        alert("참3");
    }
 >> 이런 경우, 어떻게 되는가? 참1만 실행이 된다
 >> if...else if 구문에서는 앞의 조건이 만족하면 그 다음 조건들은 해석하지 않는다

문제1

✨ 사용자에게 이름과 국어점수 영어점수 수학점수를 물어보고 평균점수가
90점 이상이라면 [지연비 님은 A등급입니다]
80점 이상이라면 [지연비 님은 B등급입니다]
70점 이상이라면 [지연비 님은 C등급입니다]
70점 미만이라면 [지연비님은 F등급입니다]

✨ 코드

var a = prompt("이름이 뭐에요?");
var b = Number(prompt("국어점수가 뭐에요"));
var c = Number(prompt("영어점수가 뭐에요?"));
var d = Number(prompt("수학점수가 뭐에요?"));

var f = (b+c+d)/3;

if (f >= 90) {
    alert("["+a+"님은 A등급입니다]");
}
else if (f >= 80) {
    alert("["+a+"님은 B등급입니다]");
}
else if (f >= 70) {
    alert("["+a+"님은 C등급입니다]");
}
else {
    alert("["+a+" 님은 F등급입니다]");
}

✨ 출력화면

if 중첩문

 var userID = prompt("아이디를 입력해주세요.");
 	if(userID == "green"){
       var userPW = prompt("비밀번호를 입력해주세요.");
           if(userPW == "1234"){
              alert("로그인 되었습니다.");                    
                   }else{
                   alert("아이디는 맞았는데 비밀번호는 틀리네요")
                   }
                  }else{
                  alert("아이디가 잘못되었습니다.");
                 }

문제2

✨ 사용자 입력 창을 출력하고 점수를 입력하여 등급을 출력하는 프로그램을 작성하고자 한다. 다음의 요구사항을 반영하여 결과물을 작성하시오.

✨ 요구사항
1) 반드시 if문을 사용하여 작성하시오.
2) 각 점수별 등급이 다음과 같이 출력되도록 프로그래밍하시오.

-다음-
입력된 점수 : 90 ~ 100 | 출력 등급 : A
입력된 점수 : 80 ~ 89 | 출력 등급 : B
입력된 점수 : 70 ~ 79 | 출력 등급 : C
입력된 점수 : 60 ~ 69 | 출력 등급 : D
입력된 점수 : 0 ~ 59 | 출력 등급 : F
입력된 점수 : 0~100 외 | 출력등급 : 잘못된 점수입니다.

✨ 코드


var i = prompt("점수를 입력하세요", " ");

    if(90<=i && i<=100){
        document.write("<p>입력된 점수 : " +i+ "</p>");
        document.write("<p>출력 등급 : A</p>");
    } else if(80<=i && i<=89){
        document.write("<p>입력된 점수 : " +i+ "</p>");
        document.write("<p>출력 등급 : B</p>");
    } else if(70<=i && i<=79){
        document.write("<p>입력된 점수 : " +i+ "</p>");
        document.write("<p>출력 등급 : C</p>");
    } else if(60<=i && i<=69){
        document.write("<p>입력된 점수 : " +i+ "</p>");
        document.write("<p>출력 등급 : D</p>");
    } else if(0<=i && i<=59){ 
        document.write("<p>입력된 점수 : " +i+ "</p>");
        document.write("<p>출력 등급 : F</p>");
    } else {
        document.write("<p>입력된 점수 : " +i+ "</p>");
        document.write("<p>출력 등급 : 잘못된 점수입니다.</p>");
    }

문제3(switch문)

✨ 사용자 입력 창을 출력하고 월을 입력하여 해당월의 마지막 날짜를 출력하는 프로그램을 작성하라. 다음의 요구사항을 반영하여 결과물을 작성해야 한다.
✨ 요구사항

  • 반드시 switch문 사용
  • switch문의 특성 반영
  • 입력한 달과 날짜가 출력되도록
  • 날짜는 28, 30, 31 중에서 출력
  • 1~12의 값이 아닌 경우 "잘못된 값입니다" 출력

✨ 코드

var i = prompt("달을 입력해주시면 몇일까지 있는지 알려드릴게요:)", " ")

switch(i){
    case "1" :
    case "3" : 
    case "5" :
    case "7" : 
    case "8" : 
    case "10":
    case "12": document.write(i+"월은 31일까지입니다");
        break;
    case "2" : document.write(i+"월은 28일까지입니다");
        break;
    case "4" :
    case "6" : 
    case "9" :
    case "11" : document.write(i+"월은 30일까지입니다");
        break;
    default : document.write("잘못된 값입니다");
}

좋은 웹페이지 즐겨찾기