Menu
Coddy logo textTech

Saf Fonksiyonlar

Coddy'nin Solidity Journey'sinin Temel Bilgiler bölümünün bir parçası. Ders 23 / 53.

Saf bir fonksiyon, sözleşme durumunu okumadan veya sözleşme durumuna yazmadan parametrelerinden ve yerel değerlerinden hesaplama yapar. Bu, bir hesaplamanın akıl yürütülmesini kolaylaştırır. Bir fonksiyonu pure olarak işaretlemek, verileri silme isteği değil, derleyici tarafından kontrol edilen bir taahhüttür.

Bu yardımcıyı sözleşmenin içinde tanımlayın:

function perimeter(uint256 w, uint256 h) internal pure returns (uint256) {
    return 2 * (w + h);
}

Sağlanan main fonksiyonunun içinde kullanın:

console.log(perimeter(8, 3));

Yardımcı yalnızca genişlik ve yüksekliğe ihtiyaç duyar. Toplamlarının iki katını döndürür, bu nedenle saf olabilir. Ana sarmalayıcı, hata ayıklama konsolunu kullandığı için view olarak kalır; yardımcının kendisi günlük kaydı veya durum erişimi içermez.

Saf bir işlev, sözleşme durumunu okumaz veya yazmaz.

challenge icon

Görev

Kolay

uint256 girdisinin üç katını döndüren triple adlı saf bir dahili yardımcı oluştur. main içinden triple(value) değerini yazdır.

Testler main işlevine şu sırayla bağımsız değişkenler iletir: uint256 value. Her test, sözleşme durumunu yeni başlatır.

İstenen çıktı için console.log kullan. İstenen değerleri, görev bunları belirtmedikçe ek etiket olmadan, satır başına bir tane olacak şekilde yazdır.

Kendin dene

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
    function main(uint256 value) external view {
        // Çözümünüzü buraya yazın.
    }
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Temel Bilgiler bölümündeki tüm dersler

Kendi başına pratik yap: Solidity playground