قيم الإرجاع
جزء من قسم الأساسيات في رحلة Ruby على Coddy — الدرس 50 من 88.
حتى الآن، قامت الأساليب (methods) لدينا بتنفيذ إجراءات مثل طباعة المخرجات. لكن الأساليب تصبح قوية حقاً عندما تتمكن من إرسال البيانات مرة أخرى إلى الكود الذي استدعاها. هذا هو الغرض من قيم الإرجاع (return values).
في لغة روبي (Ruby)، تُرجع الدالة (method) تلقائيًا قيمة آخر تعبير برمجِي فيها:
def add(a, b)
a + b
end
result = add(5, 3)
puts result # المخرجات: 8لاحظ أنه لا يوجد puts داخل الطريقة. بدلاً من ذلك، تقوم الطريقة بحساب a + b وتُرجع تلك القيمة. يمكننا بعد ذلك تخزينها في متغير أو استخدامها مباشرة.
يمكنك أيضاً استخدام الكلمة المفتاحية return بشكل صريح:
def multiply(a, b)
return a * b
end
puts multiply(4, 5) # المخرجات: 20تخرج الكلمة المفتاحية return من الطريقة فوراً وتعيد القيمة المحددة. هذا مفيد عندما تريد الخروج مبكراً بناءً على شرط معين. كلا النهجين يعملان، لكن مبرمجي Ruby غالباً ما يعتمدون على عمليات الإرجاع الضمنية للحصول على كود أكثر تنظيماً.
تسمح لك قيم الإرجاع بربط العمليات وبناء منطق معقد من دوال بسيطة:
def double(n)
n * 2
end
puts double(double(3)) # المخرجات: 12التحدي
سهلقم بتعريف دالة تسمى square تأخذ معاملًا واحدًا n وتعيد مربع ذلك الرقم (الرقم مضروبًا في نفسه).
اقرأ عددين صحيحين من المدخلات. استخدم دالة square لحساب مربع كل رقم، ثم اطبع مجموع المربعين.
على سبيل المثال، إذا كانت المدخلات هي 3 و 4:
- مربع 3 هو 9
- مربع 4 هو 16
- المجموع هو 25
يجب أن تكون المخرجات:
25إذا كانت المدخلات هي 5 و 2، يجب أن تكون المخرجات:
29ورقة مرجعية
يمكن للدوال (Methods) إرجاع قيم إلى الكود الذي قام باستدعائها. في لغة Ruby، تقوم الدالة تلقائيًا بإرجاع قيمة آخر تعبير فيها:
def add(a, b)
a + b
end
result = add(5, 3)
puts result # المخرجات: 8يمكنك أيضًا استخدام الكلمة المفتاحية return بشكل صريح للخروج من الدالة وإرجاع قيمة:
def multiply(a, b)
return a * b
end
puts multiply(4, 5) # المخرجات: 20تسمح لك قيم الإرجاع بربط استدعاءات الدوال ببعضها:
def double(n)
n * 2
end
puts double(double(3)) # المخرجات: 12جرّب بنفسك
# قراءة عددين صحيحين من المدخلات
num1 = gets.chomp.to_i
num2 = gets.chomp.to_i
# TODO: قم بتعريف دالة التربيع (square) أدناه
# TODO: احسب مجموع المربعات باستخدام دالة التربيع واطبع النتيجةيتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4المعاملات - الجزء الثاني
المعاملات المنطقية - الجزء الأولالمعاملات المنطقية - الجزء الثانيمراجعة - المنطق البسيطالمعاملات المنطقية - الجزء الثالثالمعاملات المنطقية - الجزء الرابع7حاسبة تقسيم الفاتورة
رسالة الترحيبالحصول على مدخلات المستخدم2المتغيرات وأنواع البيانات
الأرقام والمتغيراتنوع البيانات Stringنوع البيانات Booleanنوع البيانات Symbolالتحقق من أنواع البياناتقواعد التسميةملخص - إنشاء المتغيرات8الحلقات التكرارية
حلقة For مع النطاقاتحلقة WhileBreakNextمراجعة - المضروب (Factorial)حلقة Timesحلقة Untilالحلقات المتداخلةمراجعة - الإدخال الديناميكي (Dynamic Input)3المعاملات - الجزء الأول
المعاملات الحسابيةمعامل باقي القسمةاختصارات العمليات الحسابيةمراجعة - العمليات الرياضية البسيطةمعاملات المقارنة6أساسيات الإدخال والإخراج
الإخراج باستخدام putsالإخراج باستخدام print و pالإخراج باستخدام المتغيراتالإدخال باستخدام getsدالة Chompتحويل أنواع البياناتمراجعة - حاسبة العمرمراجعة - صح أم خطأ9الدوال (Methods)
تعريف الدالةمعاملات الدالةقيم الإرجاعمراجعة - دالة Sigmaمراجعة - دالة Validationالقيم الافتراضية للمعاملات