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

معاملات الدالة

جزء من قسم الأساسيات في رحلة Ruby على Coddy — الدرس 49 من 88.

تصبح الدوال (Methods) أكثر قوة عندما يمكنها استقبال مدخلات. تسمح لك المعاملات (Parameters) بتمرير البيانات إلى الدالة، مما يجعلها مرنة وقابلة لإعادة الاستخدام في مواقف مختلفة.

لإضافة معلمات، ضعها داخل أقواس بعد اسم الطريقة:

def greet(name)
  puts "Hello, #{name}!"
end

greet("Alice")  # المخرجات: Hello, Alice!
greet("Bob")    # المخرجات: Hello, Bob!

المعامل name يعمل كمتغير داخل الدالة. عندما تستدعي greet("Alice")، يتم تعيين القيمة "Alice" لـ name لهذا الاستدعاء.

يمكن للميثودز (Methods) قبول معلمات متعددة، مفصولة بفاصلات:

def add(a, b)
  puts a + b
end

add(5, 3)   # المخرجات: 8
add(10, 7)  # المخرجات: 17

الترتيب مهم. يذهب الوسيط الأول إلى المعلمة الأولى، والوسيط الثاني إلى المعلمة الثانية، وهكذا. يجب عليك تقديم عدد الوسائط الذي تتوقعه الـ method بالضبط، وإلا سيقوم Ruby برفع خطأ.

challenge icon

التحدي

سهل

قم بتعريف دالة تسمى introduce تأخذ معاملين: name و age. يجب أن تطبع الدالة رسالة بالتنسيق التالي:

My name is [name] and I am [age] years old.

اقرأ مدخلين:

  1. سلسلة نصية تمثل الاسم
  2. عدد صحيح يمثل العمر

بعد تعريف الدالة، قم باستدعائها باستخدام قيم المدخلات.

على سبيل المثال، إذا كانت المدخلات هي Alice و 25، يجب أن يكون المخرج:

My name is Alice and I am 25 years old.

إذا كانت المدخلات هي Bob و 30، يجب أن يكون المخرج:

My name is Bob and I am 30 years old.

ورقة مرجعية

يمكن للميثودات (Methods) قبول معاملات (parameters) لجعلها مرنة وقابلة لإعادة الاستخدام. توضع المعاملات داخل أقواس بعد اسم الميثود:

def greet(name)
  puts "Hello, #{name}!"
end

greet("Alice")  # المخرجات: Hello, Alice!

يعمل المعامل كمتغير داخل الميثود. عند استدعاء الميثود، يتم تعيين قيمة الوسيط (argument) للمعامل.

يمكن للميثودات قبول معاملات متعددة، مفصولة بفاصلات:

def add(a, b)
  puts a + b
end

add(5, 3)   # المخرجات: 8

ترتيب الوسائط مهم - الوسيط الأول يذهب إلى المعامل الأول، والثاني إلى المعامل الثاني، وهكذا. يجب عليك تقديم عدد الوسائط الذي تتوقعه الميثود بالضبط.

جرّب بنفسك

# قراءة المدخلات
name = gets.chomp
age = gets.chomp.to_i

# مهام: قم بتعريف دالة introduce أدناه


# استدعاء الدالة مع قيم المدخلات
introduce(name, age)
quiz iconاختبر نفسك

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

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