Menu
Coddy logo textTech

순수 함수

Coddy Solidity 여정의 기초 섹션에 포함된 레슨. 53개 중 23번째.

순수 함수는 컨트랙트 상태를 읽거나 쓰지 않고 매개변수와 지역 값으로 계산을 수행합니다. 따라서 계산을 쉽게 추론할 수 있습니다. 함수를 pure로 표시하는 것은 컴파일러가 확인하는 약속이지, 데이터를 삭제하라는 요청이 아닙니다.

컨트랙트 내부에 이 헬퍼를 정의하세요:

function perimeter(uint256 w, uint256 h) internal pure returns (uint256) {
    return 2 * (w + h);
}

제공된 main 함수 안에서 사용하세요:

console.log(perimeter(8, 3));

도우미 함수에는 너비와 높이만 필요합니다. 이 함수는 두 값의 합을 두 배로 반환하므로 순수 함수로 만들 수 있습니다. 디버깅 콘솔을 사용하기 때문에 메인 래퍼는 view로 유지됩니다. 도우미 함수 자체에는 로깅이나 상태 접근이 없습니다.

순수 함수는 계약 상태를 읽거나 쓰지 않습니다.

challenge icon

챌린지

쉬움

uint256 입력값의 세 배를 반환하는 triple이라는 순수 내부 헬퍼를 만드세요. main에서 triple(value)을 출력하세요.

테스트는 다음 순서로 main에 인수를 전달합니다: uint256 value. 각 테스트는 새로운 컨트랙트 상태에서 시작합니다.

요청된 출력을 위해 console.log를 사용하세요. 요청된 값만 한 줄에 하나씩 출력하고, 과제에서 지정하지 않는 한 추가 레이블은 표시하지 마세요.

직접 해보기

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
    function main(uint256 value) external view {
        // 여기에 솔루션을 작성하세요.
    }
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨

직접 연습해 보세요: Solidity 플레이그라운드