Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

إرجاع القيم

جزء من قسم الأساسيات في رحلة Solidity على Coddy. الدرس 22 من 53.

يمكن للدالة حساب نتيجة دون طباعتها. صرّح بنوع النتيجة باستخدام returns، ثم استخدم return داخل الجسم. يمكن للمستدعي تخزين القيمة المُعادة واستخدامها في تعبير أكبر. الإعادة والطباعة إجراءان منفصلان.

عرّف هذه الدالة المساعدة داخل العقد:

function doubled(uint256 n) internal pure returns (uint256) {
    return n * 2;
}

استخدمها داخل الدالة main المتوفرة:

uint256 value = doubled(9);
console.log(value + 1);

تُعيد الدالة المساعدة القيمة ثمانية عشر. يضيف المستدعي واحدًا ويطبع تسعة عشر. تُنهي عبارة return استدعاء الدالة الحالي، لذا لا يمكن للتعليمات العادية التي تأتي بعد عبارة return غير المشروطة أن تسهم في ذلك الاستدعاء.

يمكن للمستدعي تخزين قيمة مُعادة أو استخدامها دون أن تطبعها الدالة المساعدة.

challenge icon

التحدي

سهل

اكتب دالة مساعدة داخلية ونقية باسم square تُرجع حاصل ضرب n في n. في main، خزّن square(side) في متغير واطبعه.

تمرّر الاختبارات الوسائط إلى main بهذا الترتيب: uint256 side. يبدأ كل اختبار بحالة عقد جديدة.

استخدم console.log للإخراج المطلوب. اطبع القيم المطلوبة فقط، قيمة واحدة في كل سطر، من دون تسميات إضافية ما لم تحدد المهمة ذلك.

جرّب بنفسك

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
    function main(uint256 side) external view {
        // اكتب حلك هنا.
    }
}
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس الأساسيات

تدرّب بنفسك: Playground لـ Solidity