블록체인 학습
0 XP

실습: 조건문으로 분기하기

이번 실습에서는 if / else if / else 로 입력된 숫자를 세 가지 범주로 나누는 분류 함수를 만듭니다.

코드를 작성하기 전에 분기 흐름을 머릿속으로 그려보세요. 이 함수는 입력값을 세 갈래로 나눕니다. 핵심은 검사 순서 입니다. 가장 구체적인 조건(특정 값 0)을 먼저 검사하고, 그다음 범위 조건(100 이상)을, 마지막으로 나머지 전부를 처리하는 else 를 두면 의도대로 정확히 한 갈래만 실행됩니다.

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
 
// 패턴 예시: 등급을 세 갈래로 나누는 분기 구조
contract Pattern {
    function level(uint256 x) public pure returns (string memory) {
        if (x == 0) {
            return "none";
        } else if (x >= 100) {
            return "high";
        } else {
            return "mid";
        }
    }
}

해야 할 일:

  1. NumberClassifier 컨트랙트 안에 classify 함수를 구현하세요.
  2. classify 는 uint256 value 를 입력받아 string memory 를 반환하는 public pure 함수입니다.
  3. 분기 규칙:
    • value 가 0 이면 "zero" 반환
    • value 가 100 이상이면 "big" 반환
    • 그 외에는 "small" 반환

조건 검사 순서를 신경 쓰세요. 가장 구체적인 조건(0)부터 검사하면 의도대로 동작합니다. 모든 경우를 else 로 마무리하면 함수가 반드시 값을 반환합니다.

Code Editor
에디터를 불러오는 중...
실행 결과

Run 버튼을 눌러 코드를 실행하세요.