Solidity-031 LoopExample

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.9;

/**

 * @title ForLoopExample

 * @dev This Solidity smart contract demonstrates the use of a for loop to store and emit Ethereum block numbers as events.

 * It includes a mapping to store block numbers indexed by their order, a counter to keep track of the stored block numbers, and an event to log these block numbers.

 */

contract ForLoopExample {

    // Mapping to store block numbers with their corresponding index.

    mapping(uint => uint) blockNumber;

    // Counter to keep track of the number of block numbers stored.

    uint counter;

    // Event to log the block numbers.

    event uintNumber(uint);

    /**

     * @dev Function to add the current block number to the mapping and increment the counter.

     */

    function setNumber() public {

        // Store the current block number in the mapping and increment the counter.

        blockNumber[counter++] = block.number;

    }

    /**

     * @dev Function to retrieve and emit all stored block numbers.

     */

    function getNumbers() public {

        // Loop through the stored block numbers and emit them as events.

        for (uint i = 0; i < counter; i++) {

            emit uintNumber(blockNumber[i]);

        }

    }

}

//Deploy:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值