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

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.

主站蜘蛛池模板: 昭通市| 贵南县| 张家港市| 岫岩| 抚松县| 灵石县| 皋兰县| 峨眉山市| 海南省| 抚州市| 高邑县| 锦屏县| 宜黄县| 芒康县| 紫金县| 休宁县| 清原| 昭觉县| 阳原县| 独山县| 根河市| 仙桃市| 察雅县| 西吉县| 额济纳旗| 修文县| 富蕴县| 金山区| 元朗区| 全椒县| 莲花县| 尉氏县| 称多县| 美姑县| 玉林市| 乐至县| 云安县| 光山县| 德清县| 罗田县| 大埔县|