배열 순회
Coddy Solidity 여정의 기초 섹션에 포함된 레슨. 53개 중 39번째.
루프 카운터를 배열 인덱스로 사용하여 모든 요소를 처리하세요. 0에서 시작하고 카운터가 length보다 엄격히 작은 동안 계속하세요. 이렇게 하면 범위를 벗어난 액세스를 시도하지 않고 마지막 유효 인덱스까지 방문합니다.
이 발췌문의 문은 제공된 main 함수 내부에서 실행됩니다.
uint256[3] memory values = [uint256(2), 5, 8];
uint256 total = 0;
for (uint256 i = 0; i < values.length; i++) {
total += values[i];
}
console.log(total);루프는 인덱스 0, 1, 2를 차례로 방문하며 2, 5, 8을 더합니다. 포함적인 <= length 조건은 인덱스 3을 시도하여 되돌리기를 발생시킵니다. 누산기는 루프 바깥에 있어야 합니다.
끝을 지나지 않고 유효한 모든 인덱스를 방문하려면 index < array.length를 사용하세요.
챌린지
쉬움a, b, c를 고정 크기 메모리 배열에 저장하세요. 루프를 사용하여 이들의 합계를 계산하고 출력하세요.
테스트는 다음 순서로 main에 인수를 전달합니다: uint256 a, uint256 b, uint256 c. 각 테스트는 새로운 컨트랙트 상태로 시작합니다.
요청된 출력을 위해 console.log를 사용하세요. 요청된 값만 한 줄에 하나씩 출력하고, 과제에서 지정하지 않는 한 추가 레이블은 출력하지 마세요.
직접 해보기
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
function main(uint256 a, uint256 b, uint256 c) external view {
// 여기에 솔루션을 작성하세요.
}
}이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
기초의 모든 레슨
직접 연습해 보세요: Solidity 플레이그라운드