Menu
Coddy logo textTech

도우미 함수 호출

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

하나의 헬퍼는 계산을 의미 있는 단계로 나누기 위해 다른 헬퍼를 호출할 수 있습니다. 바깥쪽 헬퍼는 반환된 값을 사용한 다음 자체 결과를 반환합니다. 내부 함수는 컨트랙트의 다른 함수에서 이름으로 직접 호출할 수 있습니다.

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

function twice(uint256 n) internal pure returns (uint256) {
    return n * 2;
}
function adjusted(uint256 n) internal pure returns (uint256) {
    return twice(n) + 4;
}

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

console.log(adjusted(6));

adjusted를 두 번 호출하면 열두를 반환하고, 그다음 네를 더합니다. main은 최종 결과인 열여섯만 확인합니다. 이 분리를 통해 반복되는 두 배 규칙은 한 곳에 두고, 다른 헬퍼는 추가 조정을 설명할 수 있습니다.

내부 헬퍼는 이름으로 다른 내부 헬퍼를 직접 호출할 수 있습니다.

challenge icon

챌린지

쉬움

순수한 내부 헬퍼 doubleValue를 작성하여 n의 두 배를 반환하고, withBonus를 작성하여 doubleValue(n)에 5를 더한 값을 반환하세요. withBonus(points)를 출력하세요.

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

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

직접 해보기

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

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

기초의 모든 레슨

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