Fungsi Murni
Termasuk bagian Dasar-Dasar dalam perjalanan Solidity di Coddy. Pelajaran 23 dari 53.
Fungsi murni menghitung dari parameter dan nilai lokalnya tanpa membaca atau menulis state contract. Ini membuat perhitungan mudah dipahami. Menandai fungsi sebagai pure adalah janji yang diperiksa oleh compiler, bukan permintaan untuk menghapus data.
Definisikan fungsi pembantu ini di dalam contract:
function perimeter(uint256 w, uint256 h) internal pure returns (uint256) {
return 2 * (w + h);
}Gunakan fungsi ini di dalam fungsi main yang disediakan:
console.log(perimeter(8, 3));Fungsi pembantu hanya memerlukan lebar dan tinggi. Fungsi ini mengembalikan dua kali jumlah keduanya, sehingga bisa bersifat murni. Pembungkus utama tetap view karena menggunakan konsol debug; fungsi pembantu itu sendiri tidak memuat pencatatan atau akses state.
Fungsi murni tidak membaca atau menulis state kontrak.
Tantangan
MudahBuat helper internal pure bernama triple yang mengembalikan tiga kali input uint256-nya. Cetak triple(value) dari main.
Pengujian memberikan argumen ke main dalam urutan ini: uint256 value. 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 jika tugas memintanya.
Coba sendiri
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
function main(uint256 value) external view {
// Tulis solusimu di sini.
}
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
2Variabel 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