Tổng tích lũy
Thuộc phần Nền tảng cơ bản trong hành trình Solidity của Coddy. Bài học 33 trên 53.
Biến tích lũy lưu kết quả khi vòng lặp chạy. Hãy khởi tạo biến này trước vòng lặp để mỗi lần lặp cộng dồn vào tổng trước đó. Cách viết tắt total += value có nghĩa giống như total = total + value.
Các câu lệnh trong đoạn trích này chạy bên trong hàm main đã cho.
uint256 total = 0;
for (uint256 i = 1; i <= 4; i++) {
total += i;
}
console.log(total);Biến tích lũy lần lượt có giá trị một, ba, sáu và mười. In ra sau vòng lặp chỉ hiển thị kết quả cuối cùng. Khởi tạo lại total bên trong mỗi lần lặp sẽ làm mất kết quả đã tính trước đó.
Khởi tạo biến tích lũy trước vòng lặp và cập nhật biến này bên trong vòng lặp.
Thử thách
DễDùng vòng lặp để cộng các số nguyên từ 1 đến n, sau đó in ra tổng. n nằm trong khoảng từ 0 đến 15.
Các bài kiểm tra truyền đối số cho main theo thứ tự này: uint256 n. Mỗi bài kiểm tra bắt đầu với trạng thái hợp đồng mới.
Dùng console.log cho đầu ra được yêu cầu. Chỉ in các giá trị được yêu cầu, mỗi giá trị trên một dòng, không thêm nhãn trừ khi đề bài yêu cầu.
Tự làm thử
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
function main(uint256 n) external view {
// Viết lời giải của bạn ở đây.
}
}Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Nền tảng cơ bản
Tự luyện tập: Playground Solidity