Workshop / Practice 08

내가 완성하는 예산 집행률 계산기

학생 교재 8단원 · 워크시트 8단원

업무규칙금액은 가상의 만원 단위이며 0 이상의 안전한 정수입니다. 예산은 0보다 커야 합니다. 집행률 80% 미만 정상, 80% 이상 100% 미만 주의, 100% 이상 초과입니다. 표시만 소수점 한 자리로 반올림하며 판정은 원래 값을 사용합니다. 쉼표와 ‘만원’ 글자는 입력하지 않습니다.

01. 업무 규칙 세 줄을 작성하세요

입력 검증과 화면은 준비되어 있습니다. 아래 세 식만 작성하고 시험합니다. 초기값 0·false·false는 정답이 아닙니다. budget은 예산, spent는 지출, rate는 계산한 집행률입니다.

수정 후 시험 버튼을 눌러야 아래 계산기에 반영됩니다. 입력 중인 규칙은 자동 저장되지 않습니다.

02. 입력하고 결과를 확인하세요

예산과 지출을 입력해 주세요.

검증 사례

일반 50%, 경계 80·100%, 예산 0, 지출 빈칸, 지출 abc를 먼저 확인하세요.

최종 계산기 검증 사례
구분예산 · 만원지출 · 만원예상 결과
일반1005050.0% · 정상
경계 바로 전1007979.0% · 정상
80% 경계1008080.0% · 주의
100% 경계100100100.0% · 초과
100% 초과100120120.0% · 초과
실제 지출 010000.0% · 정상
예산 0010예산은 0보다 커야 합니다
누락100빈칸예산과 지출을 모두 입력해 주세요
문자100abc0 이상의 정수를 입력해 주세요
음수100-10 이상의 정수를 입력해 주세요
소수1001.50 이상의 정수를 입력해 주세요
표시 반올림10000799680.0% · 정상 (판정 기준 79.96%)
읽어 볼 계산 코드 · TODO를 HTML 소스에서 직접 수정할 수도 있습니다

실제 실행 규칙은 HTML 맨 아래 START_RULES의 세 식입니다. 아래 코드는 같은 흐름을 읽기 위한 의사 완성 예시입니다.

function calculate(budget, spent) {
  const rate = 0 /* TODO1: 수식 */;
  let status;
  if (false /* TODO2: 초과 조건 */) {
    status = "초과";
  } else if (false /* TODO3: 주의 조건 */) {
    status = "주의";
  } else {
    status = "정상";
  }
  return { rate, status };
}

교육용 가상 자료 계산기입니다. 브라우저에서만 동작하며 입력값을 서버에 저장하지 않습니다. HTML 파일에는 동작에 필요한 코드가 모두 포함되어 있습니다.