티스토리 뷰

개발 과제 :: html 과 js 를 이용하여 계산기를 구현하라.

 


 

문제 설명

Html과 JS를 이용하여 계산기를 구현한다.

단순하게 입력창과 버튼만 있으며, 사칙 연산만 가능하도록 구현하면 된다.

(띄어쓰기를 했을 때, 안했을 때 모두 동작하도록 구현할 수 있어야 한다.)


exit을 입력하면 종료 경고창이 출력되도록한다.

  • 중요 포인트
  1. 절차지향 프로그래밍 (지금까지 하던 모든게 절차지향 프로그래밍이었으므로 하던 대로 하면 됨)
    1. 기능별로 함수를 분리하고, 함수(또는 메소드)가 한 가지 일만 하도록 최대한 작게 만들어라. (함수 하나에 두개의 기능이 들어가면 안된다.)
    2. → 예를 들어, printMessage()라는 함수는 출력 기능만 있어야한다.
// 예시 : 출력 함수
function printMessage(msg) {
	console.log(msg);
}

// 아래처럼 코딩하면 안된다.
// 아래는 출력함수 안에서 메세지가 없으면 입력을 받도록 구현한 코드다.
function printMessage(msg) {
	if (!msg.length) msg = 입력받기();
  console.log(msg);
}

/* 그럼 메세지가 없을 때 입력을 받으려면 어떡해야할까? */
function main(msg) {
  // 메인함수, 즉 함수를 호출하는 곳에서 msg가 존재하는지 확인한 후에 없다면 입력을 받는 방향으로 코딩해야한다.
  if (!msg.length) msg = input();
  printMessage(msg);
}

	function input() {...}
function printMessage(msg) {...}
main(msg); // 메인함수 호출, 시작점.
  1.  변수명, 함수명 등 이름 짓는데에 시간을 투자해라. (코딩 컨벤션)
  • 요구사항
  1. 함수의 길이가 20라인을 넘어가지 않도록 구현한다.
  2. indent(인덴트, 들여쓰기) depth를 4가 넘지 않도록 구현한다. 3까지만 허용한다.
  3. → 예를 들어 while문 안에 if문이 있으면 들여쓰기는 2이다. → for문 안에 if문 안에 if문이 있으면 들여쓰기는 3이다. (이까지만 허용) → 힌트: indent(인덴트, 들여쓰기) depth를 줄이는 좋은 방법은 함수(또는 메소드)를 분리하면 된다.

 

 

 

 

 

 

 

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2025/03   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
글 보관함