Solidity 문법 - (17) 반복문
2023. 6. 1. 22:22ㆍBlockChain/Solidity 깨부수기 ( 유투브 강의 )
목차 |
1. 반복문 |
2. 반복문 예제코드 |
1. 반복문
이전 포스팅의 조건문과 마찬가지로 솔리디티에도 반복문이 존재한다.
반복문은 조건을 만족하면 코드를 반복실행한다.
솔리디티에서 반복문은 세 가지 형태로 사용할 수 있다.
for 문
for(초기값; 종료조건; 값의 변화량){
// 반복실행할 코드
}
while 문
초기값 선언
while(종료 조건){
// 반복실행할 코드
값의 변화량
}
do while 문
do while은 위의 두 반복문과는 조금 다르게 조건을 체크하지않고 코드를 실행한다.
즉, 무조건 do 안에있는 코드를 한번 실행하고나서 종료를 하게된다.
위의 두 반복문은 조건이 맞지않으면, 코드를 실행하지 않지만,
do while문은 조건이 맞지 않더라도 반드시 한번은 코드를 실행한다.
초기값 선언
do{
// 반복실행할 코드
} while(종료 조건)
2. 반복문 예제코드
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
contract LoopExample {
function forLoop(uint256 _num) public pure returns(uint256) {
uint256 result;
for (uint256 i = 0; i <= _num; i++) {
result += i;
}
return result;
}
function whileLoop(uint256 _num) public pure returns(uint256) {
uint256 count = _num;
while (count > 0) {
count--;
}
return count;
}
function doWhileLoop(uint256 _num) public pure returns(uint256) {
uint256 result = 1;
uint256 i = 1;
do {
result *= i;
i++;
} while (i <= _num);
return result;
}
}
for문은 값을 1부터 차례대로 점점 더해가는 등차수열의 모습을 하고 있다.
while문은 값을 1씩 줄여 나가 0이 되면 종료되는 함수이다.
do-while문은 n!, 팩토리얼을 구현한 함수이다.
각각 실행해보면,
for 문은 1 + 2 + 3 + 4 + 5 = 15를 출력한 것을 볼 수 있고,
while문은 5를 넣어서 결국 0까지 값을 깎아 0을 출력했다.
마지막으로 do-while문은 5!, 5*4*3*2*1 = 120을 출력하고있다.
'BlockChain > Solidity 깨부수기 ( 유투브 강의 )' 카테고리의 다른 글
Solidity 문법 - (19) 에러 핸들링 (0) | 2023.06.04 |
---|---|
Solidity 문법 - (18) continue와 break (0) | 2023.06.01 |
Solidity 문법 - (16) 조건문 if (0) | 2023.06.01 |
Solidity 문법 - (15) struct (타입) (0) | 2023.06.01 |
Solidity 문법 - (14) Array (0) | 2023.05.30 |