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

تعريف الدوال

جزء من قسم Fundamentals في رحلة Rust على Coddy — الدرس 49 من 75.

الدالة (method) هي تسلسل من الكود البرمجي الذي له اسم. الغرض من الدالة هو إعادة استخدام جزء من الكود عدة مرات.

على سبيل المثال، ألقِ نظرة على هذا الكود:

println!("Welcome to Coddy");
println!("New session...");
println!("Welcome to Coddy");
println!("Another session...");
println!("Welcome to Coddy");

نحن نستخدم نفس الكود println!("Welcome to Coddy") مراراً وتكراراً. مشكلة أخرى في هذا الكود هي أننا إذا أردنا تغيير الرسالة: Welcome to Coddy إلى شيء مختلف، مثل "Welcome aboard" سيتعين علينا تغيير 3 أسطر مختلفة من الكود. لحل هذه المشكلة، سنستخدم الدوال (methods).

للتصريح عن دالة (method)، نستخدم الصيغة التالية:

fn method_name(parameters) {
	// الكود
}

في مثالنا، سنقوم بإنشاء دالة تسمى greet وستبدو بهذا الشكل:

fn greet() {
    println!("Welcome to Coddy");
}

لاستخدام/استدعاء/تنفيذ الطريقة، نكتب greet();:

greet();
println!("New session...");
greet();
println!("Another session...");
greet();

سيؤدي هذا إلى نفس المخرجات المذكورة أعلاه.

اصطلاح: يُوصى بالتصريح عن كود الطريقة (method) قبل استدعائها/تنفيذها، وذلك كممارسة جيدة لتحسين قابلية القراءة.

challenge icon

التحدي

سهل

اكتب برنامجاً يستقبل مدخلاً واحداً، وهو عبارة عن رقم. يشير الرقم المدخل إلى عدد المرات التي يجب فيها تنفيذ الطريقة (method) أدناه. 

قم بإنشاء طريقة (method) تحسب مجموع جميع الأرقام بين 1 و 1000 (بما في ذلك) وتطبعها، وقم بتسمية الطريقة بأي اسم تريده.

ملاحظة! كعرف موصى به، اكتب الطريقة قبل عبارات استدعائها/تنفيذها في التعليمات البرمجية الخاصة بك.

ورقة مرجعية

الدالة (Method) هي تسلسل من التعليمات البرمجية التي لها اسم، وتُستخدم لإعادة استخدام الكود عدة مرات.

للإعلان عن دالة:

fn method_name(parameters) {
    // الكود
}

مثال على دالة:

fn greet() {
    println!("Welcome to Coddy");
}

لاستدعاء/تنفيذ دالة:

greet();

اصطلاح: يوصى بالإعلان عن الدالة قبل استدعائها/تنفيذها.

جرّب بنفسك

use std::io;

// إعلان الدالة
fn sum_numbers() {
    // أكمل الدالة
    
}


fn main() {
    let mut input = String::new();
    io::stdin().read_line(&mut input).unwrap();
    let n: i32 = input.trim().parse().unwrap();
    for _ in 0..n {
        // استدعاء الدالة n من المرات
    }
}
quiz iconاختبر نفسك

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

جميع دروس Fundamentals