본문 바로가기
JavaScript

JavaScript Ex01

by 요리하다그만둠 2022. 7. 6.

 

<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<title>Javascript Test</title>
<script>
/*
문) 아래는 은행 계좌 거리에 대한 간단한 입출금 모의 프로그램입니다.
아래의 주어진 조건과 같이 코드를 변경 및 완성하십시오.
주어진 프로그램 코드의 실행은 주어진 동영상을 참조하시기 바랍니다.
*/
    function Account() {
       
        console.log("통장 계좌 개설");
       
        this.id = '';
        this.name = '';
        this.accountNo ='';
        this.money = 0;
        this.interest = 0.05; // 이자율(이율) %
       
        /*
        문1) 아래는 입금/출금 금액을 입력받아서 처리하는 메서드입니다.
        - 양수(정수/실수 포함) 성분이 아닌 음수(정수/실수)나 다른 문자를 입력하면
          다시 입력 받을 수 있도록 반복 조치합니다.
        - 정상적인 양수값이 입력되면 반복문에서 분기하여 입력값을 리턴합니다.
        */
        // 입금액 입력
        this.input = function(inputType) {
            // TODO
			console.log(inputType + "금액 입금");
            // 돈(money)를 입력받습니다. 
            // 입력 타이틀 : " 금액을 입력하십시오 : "
			let money = prompt(inputType + "금액을 입력하십시오.");


            // 무한 반복문을 작성하고
            // 그 내부에서 우선적으로 조건문 혹은 삼항 연산자를
            // 활용하여 입금된 돈이 0원인지를 점검합니다.
			while(true) {

				money = isNaN(money) ? 0 : parseInt(money);
				if(0 <= money) {
					 //money = prompt(inputType + "금액을 입력해주세요");
					 return money;
				}else{
					alert("잘못된 금액입니다.");
					break;
				}
				return money;
			}
            // 조건문을 작성하여 만약 입금된 돈이 0원 이하이면
            // 다시 입력받을 수 있도록 조치합니다.
            // 그렇지 않으면 무한 반복문에서 분기하도록 조치합니다.
        }
       
        // 입금 실행
        this.deposit = function(money) {
            console.log("--- 입금 처리 ---");
            this.money += money;
        }
       
        /*
        문2) 아래는 출금 금액을 처리하여 메시징하는 메서드입니다.
        - 출금 잔액이 적으면 "출금할 잔액이 적습니다." 라는 메시지창이 열리도록 조치합니다.
        - 잔액이 없을 경우는 "잔액이 없습니다." 라는 메시징 처리를 위와 같이 처리합니다.
        - 정상적인 경우는 들어온 금액 만큼 감산 처리합니다.
        */
        // 출금 실행
        this.withdraw = function(money) {
            // TODO 
			console.log("---출금 처리---");
            // 조건문(if)을 사용하여 위의 조건대로 작성합니다.
			if(this.money < money){
				alert("출금할 금액이 적습니다.");
			}else if(this.money == 0){
				alert("잔액이 없습니다.");
			}else {
				this.money -= money;
			}
        }
       
        // 이자 정산 실행
        this.calcInterest = function() {
            console.log("--- 이자 정산  ---");
            if (this.money == 0) {
                alert("잔액이 없으므로 이자 정산을 할 수 없습니다.")
            } else {
                this.money += this.money * this.interest;
            }
        }
 
        // 잔액 조회
        this.checkBalance = function() {
            console.log("--- 잔액 인쇄 처리  ---");
            console.log("잔액 : " + this.money + "원");
        }
       
    } // class
   
    /*
    문3) 위에서 언급된 모든 멤버 메서드들을 모두 prototype 형태의 메서드로 변환처리합니다.
    */
    // 실행
    window.onload = function() {
       
        var account = new Account();
       
        // 입금
        account.deposit(account.input('입금'));
        // 잔액 조회
        account.checkBalance();
       
        // 출금
        account.withdraw(account.input('출금'));
        // 잔액 조회
        account.checkBalance();
       
        // 이자 정산
        account.calcInterest();
        // 잔액 조회
        account.checkBalance();
    }
</script>
</head>
<body>
 
</body>
</html>​
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<title>Javascript Test</title>
<script>
/*
문) 아래는 은행 계좌 거리에 대한 간단한 입출금 모의 프로그램입니다.
아래의 주어진 조건과 같이 코드를 변경 및 완성하십시오.
주어진 프로그램 코드의 실행은 주어진 동영상을 참조하시기 바랍니다.
*/
    function Account() {
       
        console.log("통장 계좌 개설");
       
        this.id = '';
        this.name = '';
        this.accountNo ='';
        this.money = 0;
        this.interest = 0.05; // 이자율(이율) %
       
        /*
        문1) 아래는 입금/출금 금액을 입력받아서 처리하는 메서드입니다.
        - 양수(정수/실수 포함) 성분이 아닌 음수(정수/실수)나 다른 문자를 입력하면
          다시 입력 받을 수 있도록 반복 조치합니다.
        - 정상적인 양수값이 입력되면 반복문에서 분기하여 입력값을 리턴합니다.
        */
        // 입금액 입력
        this.input = function(inputType) {
            // TODO

            // 돈(money)를 입력받습니다. 
            // 입력 타이틀 : " 금액을 입력하십시오 : "


            // 무한 반복문을 작성하고
            // 그 내부에서 우선적으로 조건문 혹은 삼항 연산자를
            // 활용하여 입금된 돈이 0원인지를 점검합니다.


            // 조건문을 작성하여 만약 입금된 돈이 0원 이하이면
            // 다시 입력받을 수 있도록 조치합니다.
            // 그렇지 않으면 무한 반복문에서 분기하도록 조치합니다.
        }
       
        // 입금 실행
        this.deposit = function(money) {
            console.log("--- 입금 처리 ---");
            this.money += money;
        }
       
        /*
        문2) 아래는 출금 금액을 처리하여 메시징하는 메서드입니다.
        - 출금 잔액이 적으면 "출금할 잔액이 적습니다." 라는 메시지창이 열리도록 조치합니다.
        - 잔액이 없을 경우는 "잔액이 없습니다." 라는 메시징 처리를 위와 같이 처리합니다.
        - 정상적인 경우는 들어온 금액 만큼 감산 처리합니다.
        */
        // 출금 실행
        this.withdraw = function(money) {
            // TODO

            // 조건문(if)을 사용하여 위의 조건대로 작성합니다.
        }
       
        // 이자 정산 실행
        this.calcInterest = function() {
            console.log("--- 이자 정산  ---");
            if (this.money == 0) {
                alert("잔액이 없으므로 이자 정산을 할 수 없습니다.")
            } else {
                this.money += this.money * this.interest;
            }
        }
 
        // 잔액 조회
        this.checkBalance = function() {
            console.log("--- 잔액 인쇄 처리  ---");
            console.log("잔액 : " + this.money + "원");
        }
       
    } // class
   
    /*
    문3) 위에서 언급된 모든 멤버 메서드들을 모두 prototype 형태의 메서드로 변환처리합니다.
    */
    // 실행
    window.onload = function() {
       
        var account = new Account();
       
        // 입금
        account.deposit(account.input('입금'));
        // 잔액 조회
        account.checkBalance();
       
        // 출금
        account.withdraw(account.input('출금'));
        // 잔액 조회
        account.checkBalance();
       
        // 이자 정산
        account.calcInterest();
        // 잔액 조회
        account.checkBalance();
    }
</script>
</head>
<body>
 
</body>
</html>

 

'JavaScript' 카테고리의 다른 글

(Javascript) : 슬라이드 패널 작성하기  (0) 2022.07.11
(Javascript) : 새 창(window) 열기/닫기  (0) 2022.07.11
JavaScript 함수와 이벤트  (0) 2022.07.05
JavaScript 제어문  (0) 2022.07.04
JavaScript 변수  (0) 2022.07.04