التعليم السعودي

التعامل مع الباراميترات في الخوارزميات 

التعامل مع الباراميترات في الخوارزمياتالتعامل مع الباراميترات في الخوارزميات
التعامل مع الباراميترات في الخوارزميات
التعامل مع الباراميترات في الخوارزميات
التعامل مع الباراميترات في الخوارزميات

المناهج السعودية

التعامل مع الباراميترات في الخوارزميات

مفهوم الباراميتر

باراميتر تعني Parameter في اللغة الإنجليزية. الباراميتر عبارة عن متغير من أي نوعمثل int أو double أو String.. ), يتم تعريفه بين أقواس الدالة.
في المثال التالي قمنا بتعريف دالة إسمها Demo(), نوعها int, تملك باراميتر واحد نوعه int و إسمه a, و ترجع القيمة 0.

مثال

public static int Demo (int a)
{
return 0;
}

هل أنت مجبر على وضع باراميتر للدالة؟

كلا أنت لست مجبر, و إنما تضع باراميتر إذا كنت بحاجة له.
لاحظ أننا قمنا بتعرف الدالة Demo() من جديد بدون إعطائها أي باراميتر.

مثال

public static int Demo ()
{
return 0;
}

هل بإمكانك أن تضع أكثر من باراميتر للدالة؟

نعم بإمكانك وضع العدد الذي تريده من الباراميترات, شرط أن تحدد نوع كل باراميتر تقوم بإضافته و أن تضع فاصلة بين كل باراميترَين.
في المثال التالي قمنا بتعريف دالة إسمها Demo(), نوعها void, و تملك الباراميترات التالية:

  • الباراميتر الأول إسمه a و نوعه int.
  • الباراميتر الثاني إسمه b و نوعه double.
  • الباراميتر الثالث إسمه c و نوعه String.
  • الباراميتر الرابع إسمه d و نوعه boolean.

مثال

public static void Demo (int a, double b, String c, boolean d)
{

}

ما هي الفائدة من الباراميترات و لم قد أحتاجهم؟

فائدة الباراميترات أنك من خلالهم تجعل المستخدم يدخل قيمه الخاصة في الدالة فتتغير النتيجة التي ترجعها الدالة حسب القيم التي يقوم هو بإدخالها.

هل يمكن وضع قيم أولية للباراميترات؟

كلا, لا يمكن وضع قيم أولية للباراميترات, لأن فكرة الباراميترات الأساسية هي أن يتم إعطائهم القيم عند الإستدعاء.
إذاً, عند تعريف الباراميتر بداخل الدالة, لا يمكن وضع قيمة أولية له.
أما عند إستدعاء الدالة, فإنه يجب تمرير قيمة مكان كل باراميتر موضوع فيها.

مثال يوضح طريقة التعامل مع الباراميترات و فائدتهم

في المثال التالي قمنا بتعريف دالة إسمها Sum(), نوعها void, تحتوي على باراميترَين نوعهما int إسمهم a و b.
مهمة هذه الدالة هي طباعة ناتج جمع أي عددين صحيحين نضعهما فيها عند إستدعائها.

نتيجة التشغيل

كود الجافا

  1. package parameters;
  2. public class Parameters {
  3.     public static void Sum (int a, int b)
  4.     {
  5.         System.out.print(“The sum is: “ + (a+b) + “\n”);
  6.     }
  7.     public static void main (String[] args)
  8.     {
  9.         Sum(3, 4);
  10.         Sum(5, 9);
  11.         Sum(10, 20);
  12.     }
  13. }

شرح الكود

    • الهدف من هذا المثال هو توضيح فكرة أن الباراميترات تجعل النتيجة التي ترجعها الدالة تتغير على حسب القيم التي ندخلها فيها عند إستدعائها.
  1.     public static void Sum (int a, int b)
  2.     {
  3.         System.out.print(“The sum is: “ + (a+b) + “\n”);
  4.     }
  • هنا قمنا بتعريف دالة إسمها Sum() و مهمتها طباعة ناتج جمع أي عددين صحيحين نضعهما فيها عند إستدعائها.
  • إذاً عند إستدعاء هذه الدالة يجب أن نمرر لها عددين صحيحين بين أقواسها, و عندها سحدث التالي:
    • سيقوم الكمبيوتر بوضع هذين العددين في المتغيرَين a و b بنفس الترتيب.
    • بعدها سيقوم بتنفيذ أمر الطباعة الموضوع في الدالة و الذي يقضي بعرض ناتج جمع العددين الموجودين في المتغيرَين a و b
    1.     public static void main (String[] args)
    2.     {
    3.         Sum(3, 4);
    4.         Sum(5, 9);
    5.         Sum(10, 20);
    6.     }
  • هنا قمنا باستدعاء الدالة Sum()  ثلاث مرات, و كل مرة قمنا بإعطائها عددين مختلفين, و بالتالي سيعمل الكود كالتالي:
    • أول مرة: وضعنا فيها القيمتين 3 و 4 و بالتالي سيتم عرض ناتج جمع العددين هكذا:   The sum is: 7
    • ثاني مرة: وضعنا فيها القيمتين 5 و 9 و بالتالي سيتم عرض ناتج جمع العددين هكذا:   The sum is: 14
    • ثالث مرة: وضعنا فيها القيمتين 10 و 20 و بالتالي سيتم عرض ناتج جمع العددين هكذا:   The sum is: 30

شرح عملية الإستدعاء بتفصيل

هكذا كان يتم تمرير الأعداد التي كنا نضعها بين أقواس الدالة Sum()

إنتبه

إذا قمت باستدعاء دالة تحتوي على باراميتر أو أكثر, عليك إدخال قيمة مكان كل باراميتر موجود في الدالة عند إستدعائها و إلا سيؤدي ذلك إلى ظهور أخطاء في الكود.
أي باراميتر أو متغير عادي تنشئه في حدود الدالة يعتبر خاص لها, أي لا تستطيع التعامل معه بشكل مباشر من خارج حدود الدالة.

الفرق بين الكلمتين Parameter و Argument

أثناء تعريف الدالة, المتغيرات التي نقوم بتعريفها بين أقواسها تسمى Parameters.
بينما عندما نقوم باستدعاء الدالة و نعطيها قيم مكان كل باراميتر موضوع فيها, هذه القيم تسمى Arguments.

مثال

public static void Sum (int a, int b)
{
System.out.print(“The sum is: “ + (a+b) + “\n”);
}
    • هنا المتغيرين a و b يعتبروا Parameters بالنسبة للدالة.
public static void main (String[] args)
{
Sum(3, 4);
}
  • هنا القيمتين 3 و 4 يعتبروا Arguments بالنسبة للدالة.

المصدر: التعامل مع الباراميترات في الخوارزميات – المناهج السعودية

مقالات ذات صلة

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

زر الذهاب إلى الأعلى