while 반복문
Coddy Solidity 여정의 기초 섹션에 포함된 레슨. 53개 중 32번째.
while 루프는 조건을 확인하고 그 조건이 참인 동안 본문을 반복합니다. 본문 안의 업데이트를 직접 제어합니다. 루프가 결국 조건을 거짓으로 만들 수 있는 무언가를 변경하는지 확인하세요.
이 발췌문의 문장들은 제공된 main 함수 안에서 실행됩니다.
uint256 remaining = 3;
while (remaining > 0) {
console.log(remaining);
remaining--;
}카운터는 감소하기 전에 출력됩니다. 카운터가 0에 도달하면 다음 조건 확인에서 루프가 중지되므로, 부호 없는 뺄셈은 0일 때 실행되지 않습니다. 감소 연산이 없으면 조건이 영원히 참으로 유지됩니다.
while 루프에는 결국 조건을 거짓으로 만드는 경로가 필요합니다.
챌린지
쉬움n에서 시작하여 while을 사용해 1까지 카운트다운을 출력한 다음 stop을 출력하세요. n은 0에서 7 사이입니다.
테스트는 다음 순서로 main에 인수를 전달합니다: uint256 n. 각 테스트는 새로운 컨트랙트 상태로 시작합니다.
요청된 출력을 위해 console.log를 사용하세요. 작업에서 지정하지 않는 한 추가 레이블 없이 요청된 값만 한 줄에 하나씩 출력하세요.
직접 해보기
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
function main(uint256 n) external view {
// 여기에 솔루션을 작성하세요.
}
}이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
기초의 모든 레슨
직접 연습해 보세요: Solidity 플레이그라운드