• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 JavaScript, TS 게시판 공인중개사 합불판독기

공인중개사 합불판독기

7 글 보임 - 1 에서 7 까지 (총 7 중에서)
  • 글쓴이
  • #51688

    김윤호
    참가자
    function 합격했냐(num1, num2) {
                if ((num1 || num2) < 0 || (num1 || num2) > 100) {
                    alert('0~100점 사이의 숫자를 입력하여 주십시오');
                } else if ((num1 || num2) < 40) {
                    console.log('불합격1');
                } else if (num1 + num2 >= 120) {
                    console.log('합격');
                } else if (num1 + num2 < 120) {
                    console.log('불합격2');
                }
            }
    합격했냐(40, 100);
    위 스크립트 내용을 input을 받아 판독할 수 있도록
    
    <form>
            <p>Modul A: <input type="number" id="num1"></p>
            <p>Modul B: <input type="number" id="num2"></p>
            <button id="send-answer">제출</button>
        </form>
        <script>
            document.getElementById('send-answer').addEventListener('click', function() {
                //num1의 값 또는 num2의 값이 0보다 작거나, num1의 값 또는 num2의 값이 100보다 크면
                var level_interval_value = (document.getElementById('num1').value || document.getElementById('num2').value) < 0 || (document.getElementById('num1').value || document.getElementById('num2').value) > 100;
                //num1의 값 또는 num2의 값
                var small_fail = (document.getElementById('num1').value || document.getElementById('num2').value); 
                //num1의 값 + num2의 값
                var postive_pass = (document.getElementById('num1').value + document.getElementById('num2').value);
                //num1의 값 - num2의 값
                var negative_fail = (document.getElementById('num1').value - document.getElementById('num2').value);
                if (level_interval_value) {
                    alert('Please enter a value between 0 and 100.');
                } else if (small_fail < 40) {
                    alert('Fail1');
                } else if (postive_pass >= 120) {
                    alert('Pass');
                } else if (negative_fail < 120) {
                    alert('Fail2');
                }
            })
        </script>
    이렇게 만들었는데 num1과 num2의 숫자가 둘다 40보다 작으면 Fail1이 실행되는데 둘중 하나가 40보다 작아도 120이상이면 Pass로 나옵니다.
    어느 부분에서 오류가 났는지 모르겠습니다 ㅠㅠ
    #51727

    codingapple
    키 마스터
    || && 기호는 조건식 2개를 연결할 때 사용합시다 
    "num1의 값 또는 num2의 값" 같은 모호한 개념을 변수에 저장할 수는 없습니다
    #51786

    김윤호
    참가자
    <script>
            document.getElementById('send-answer').addEventListener('click', function(){
                var num1 = document.getElementById('num1').value;
                var num2 = document.getElementById('num2').value;
                
                if((num1 || num2 < 0 ) || (num1 || num2 > 100)){
                    alert('Please enter a value beteween 0 and 100.');
                } else if((num1 || num2) < 40){
                    alert('Fail1');
                } else if((num1 + num2) >= 120){
                    alert('Pass');
                } else if((num1 + num2) < 120){
                    alert('Fail2');
                }
            });
        </script>
    
    이렇게 해도 실행이 안 되는 것 같은데
    그렇다면 form으로 input값을 받아와서 script에서 확인하여 alert에 띄우려면 어떻게 짜야할까요
    #51789

    codingapple
    키 마스터
    || 는 조건식 2개를 연결할 때만 사용합시다 
    (num1 || num2 < 0 ) 이런건 (num1 < 0 || num2 < 0 ) 이래야할듯요 
    
    #51799

    김윤호
    참가자
    넵 감사합니다
    마지막으로 (num1 + num2) < 120 일때는 Fail을 뜨게 하고 (num1 + num2) >=120일때는 Pass를 뜨게 해뒀는데 num1과 num2에 60과 40을 넣어도 자꾸 Pass
    가 떠서 콘솔창에서 document.getElementById('num1').value = '60', document.getElementById('num2').value ='40'인 것을 확인하고
    (document.getElementById('num1').value + document.getElementById('num2').value) = '6040' 이렇게 했더니 6040이 나오더라구요
    num1의 값과 num2의 값의 합을 나타내고 싶으면 어떻게 해야될까요
    #51819

    codingapple
    키 마스터
    input에 적은건 전부 문자라서 parseInt('10') 하면 10이 나옵니다
    #51847

    김윤호
    참가자
    아~ 감사합니다
7 글 보임 - 1 에서 7 까지 (총 7 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠