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

تعريف دالة

جزء من قسم Fundamentals في رحلة R على Coddy — الدرس 46 من 78.

حتى الآن، كنت تكتب كوداً يتم تنفيذه من الأعلى إلى الأسفل. ولكن ماذا لو كنت بحاجة إلى تنفيذ المهمة نفسها عدة مرات في أماكن مختلفة؟ بدلاً من نسخ الكود ولصقه، يمكنك إنشاء دالة (function) - وهي كتلة برمجية قابلة لإعادة الاستخدام يمكنك استدعاؤها متى احتجت إليها.

في لغة R، يمكنك التصريح عن دالة باستخدام الكلمة المفتاحية function:

greet <- function() {
  print("Hello!")
}

greet()

المخرجات:

[1] "Hello!"

دعونا نحلل هذا. نقوم بتعيين دالة للاسم greet باستخدام عامل التعيين.

الأقواس () بعد function هي المكان الذي توضع فيه المعاملات (سنغطيها في الجزء التالي). الأقواس المتعرجة {} تحتوي على الكود الذي يتم تنفيذه عند استدعاء الدالة.

لاستخدام الدالة، ما عليك سوى كتابة اسمها متبوعًا بأقواس: greet(). يسمى هذا استدعاء أو استحضار الدالة.

يمكنك استدعاؤها بعدد المرات الذي تريده:

greet()
greet()
greet()

المخرجات:

[1] "Hello!"
[1] "Hello!"
[1] "Hello!"

تساعدك الدوال على تنظيم الكود الخاص بك، وتجنب التكرار، وتجعل برامجك أسهل في القراءة والصيانة.

challenge icon

التحدي

سهل

أنشئ دالة تسمى say_goodbye لا تأخذ أي وسائط. عند استدعائها، يجب أن تطبع الدالة الرسالة "Goodbye, see you soon!" باستخدام print().

بعد التصريح عن الدالة، قم باستدعائها مرتين لعرض الرسالة مرتين.

يجب أن تكون المخرجات:

[1] "Goodbye, see you soon!"
[1] "Goodbye, see you soon!"

ورقة مرجعية

الـ دالة (function) هي كتلة برمجية قابلة لإعادة الاستخدام يمكنك استدعاؤها متى دعت الحاجة.

للإعلان عن دالة في لغة R، استخدم الكلمة المفتاحية function وقم بتعيينها لاسم معين:

greet <- function() {
  print("Hello!")
}

الأقواس () بعد function مخصصة للمعاملات (parameters). أما الأقواس المتعرجة {} فتحتوي على الكود الذي يتم تنفيذه عند استدعاء الدالة.

لاستدعاء دالة، اكتب اسمها متبوعاً بالأقواس:

greet()

يمكنك استدعاء الدالة عدة مرات:

greet()
greet()
greet()

جرّب بنفسك

# TODO: اكتب كودك أدناه
# 1. قم بإنشاء دالة تسمى say_goodbye تطبع "Goodbye, see you soon!"
# 2. استدعِ الدالة مرتين
quiz iconاختبر نفسك

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

جميع دروس Fundamentals