Kondisi require
Termasuk bagian Dasar-Dasar dalam perjalanan Solidity di Coddy. Pelajaran 46 dari 53.
Gunakan require(condition, message) untuk menolak pemanggilan saat kondisi yang diharapkan bernilai false. Kondisi yang terpenuhi memungkinkan eksekusi berlanjut. Persyaratan yang tidak terpenuhi membatalkan pemanggilan dan perubahan statusnya. Validasi input sebelum menggunakannya dalam operasi yang bergantung pada kondisi tersebut.
Pernyataan dalam cuplikan ini dijalankan di dalam fungsi main yang disediakan.
uint256 quantity = 7;
require(quantity > 0, "Positive quantity required");
console.log(quantity * 3);Nilai tujuh lolos pemeriksaan kuantitas positif, sehingga perhitungan mencetak dua puluh satu. Jika kuantitas bernilai nol, pemanggilan akan dibatalkan. Pesan tersebut menjelaskan persyaratan yang gagal, pesan itu tidak dicetak selama pemanggilan berhasil.
require melanjutkan proses saat kondisinya benar dan membatalkannya saat kondisinya salah.
Tantangan
MudahPastikan divisor lebih besar dari nol dengan pesan error yang berguna. Lalu cetak total dibagi divisor. Pengujian output yang terlihat menggunakan divisor positif, kodemu tetap harus menyertakan pemeriksaan tersebut.
Pengujian meneruskan argumen ke main dengan urutan berikut: uint256 total, uint256 divisor. Setiap pengujian dimulai dengan state kontrak yang baru.
Gunakan console.log untuk output yang diminta. Cetak hanya nilai yang diminta, satu per baris, tanpa label tambahan kecuali ditentukan oleh tugas.
Coba sendiri
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
function main(uint256 total, uint256 divisor) external view {
// Tulis solusimu di sini.
}
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
10Aturan Kontrak
Kondisi requireRevert EksplisitEventVisibilitas dan PrivasiPembaruan dengan Pemeriksaan2Variabel dan Tipe Data
Integer Tak BertandaInput dan OutputInteger BertandaNilai Booleanstring di MemoriKartu Profil5Fungsi
Parameter FungsiMengembalikan NilaiFungsi MurniPemanggilan Fungsi PembantuPerhitungan yang Dapat Digunakan KembaliLatihan sendiri: Playground Solidity