Vòng lặp while
Thuộc phần Nền tảng cơ bản trong hành trình Solidity của Coddy. Bài học 32 trên 53.
Vòng lặp while kiểm tra một điều kiện và lặp lại phần thân khi điều kiện đó đúng. Bạn điều khiển việc cập nhật bên trong phần thân. Hãy đảm bảo vòng lặp thay đổi một thứ gì đó để cuối cùng điều kiện có thể trở thành sai.
Các câu lệnh trong đoạn trích này chạy bên trong hàm main đã cho.
uint256 remaining = 3;
while (remaining > 0) {
console.log(remaining);
remaining--;
}Bộ đếm được in ra trước khi giảm. Khi bộ đếm về 0, lần kiểm tra điều kiện tiếp theo sẽ dừng vòng lặp, vì vậy phép trừ không dấu không bao giờ chạy khi giá trị bằng 0. Nếu thiếu bước giảm, điều kiện sẽ luôn đúng.
Vòng lặp while cần có một đường đi khiến điều kiện cuối cùng trở thành sai.
Thử thách
DễBắt đầu từ n, dùng while để in đếm ngược đến 1, sau đó in stop. n nằm trong khoảng từ 0 đến 7.
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 nào trừ khi nhiệm vụ 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