官术网_书友最值得收藏!

Coding a loop

Loops are very helpful when we need to repeat the execution of a piece of code a certain number of times. Rather than copying and pasting the same lines of code, making the code block longer, we use this programming construct to add brevity to our code. Loops can be finite or infinite in nature. For the infinite loop, we generally provide a break statement to come out of it.

The smart contract in Figure 3.16 is using a finite loop to calculate the summation of a finite number of integers:

Figure 3.16: Loop inside a Solidity smart contract

The output on remix IDE is shown in Figure 3.17. As discussed earlier, keep a watch on the amount of ethers that is getting decreased in the Account tab for each call of the myFirstLoop function:

Figure 3.17: Execution of myFirstLoop inside a smart contract

The best way to check the inner working of a loop in runtime is to go to the Launch debugger tab and manually push the horizontal scroll bar from left to right, as shown in Figure 3.18. Try it! It will be fun:

Figure 3.18: Debugging mode to identify states of execution

At this point, I hope you are quite comfortable playing with smart contracts using the remix IDE in your browser. However, what I have shown is just a happy-path scenario. The development community for Ethereum is highly agile and is rolling out newer changes very quickly. By the time you start reading this book, there might be slight or major modifications in the IDE. Once you start coding, you will realize the nuances and even capture many peculiar bugs down the line. The next section is all about what you can do when you are stuck with a problem or a code bug.

主站蜘蛛池模板: 乌拉特后旗| 古浪县| 龙井市| 葫芦岛市| 靖宇县| 赤壁市| 乐至县| 靖州| 海伦市| 休宁县| 庆元县| 汉源县| 莫力| 广南县| 将乐县| 涟水县| 巫溪县| 中方县| 曲沃县| 雷波县| 无锡市| 鹤岗市| 定远县| 乐平市| 湖口县| 兖州市| 左贡县| 宁海县| 郸城县| 石阡县| 新乐市| 城步| 志丹县| 南城县| 兰坪| 皮山县| 河池市| 东辽县| 孟村| 平昌县| 海安县|