الروتين الفرعي: الإجراءات والوظائف - 2


وظيفة & nbsp؛ عبارة عن روتين فرعي يعرض نتيجة (رقم ، سطر الأحرف ، وما إلى ذلك).

تخيل أنك طلبت منتجًا من متجر على الإنترنت. من وجهة نظر البرمجة ، قمت باستدعاء بعض الإجراءات الفرعية ، وعلى عكس الإجراء ، يجب أن يعرض هذا الروتين نتيجة - تسليم المنتج الذي طلبته. تسمى هذه الإجراءات الفرعية بالوظائف.
يتم تنسيق الوظيفة بنفس طريقة تنسيق الإجراء تمامًا. الاختلاف الوحيد عن الإجراء هو وجود عامل تشغيل خاص إرجاع ، & nbsp؛ وبعد ذلك تتم كتابة القيمة المراد إرجاعها إلى البرنامج الرئيسي.

ستبدو الوظيفة التي تعرض المتوسط ​​الحسابي لعدد صحيحين كما يلي: <قبل> متوسط ​​عائم (int a، int b) { تعويم متوسط ​​= (أ + ب) / 2.0 ؛ عودة aug } يبقى معرفة كيفية استدعاء هذه الوظيفة في البرنامج الرئيسي. يجب ألا تستدعي دالة بنفس طريقة الإجراء: <قبل> متوسط ​​(10، 5)؛ ستفقد القيمة التي تم إرجاعها بواسطة الوظيفة. يبدو الأمر كما لو أن البضائع من المتجر عبر الإنترنت لم يتم تسليمها لأي شخص ، ولكن تم التخلص منها. من غير المحتمل أن ينال إعجاب العميل.

الأصح تخزين النتيجة في متغير (أو عرضها على الشاشة):
<قبل> float a = average (10، 5)؛ <قبل> Console.WriteLine (المتوسط ​​(10 ، 5)) ؛ < / code>

غالبًا ما يستخدم المبرمجون الدوال المنطقية التي ترجع القيم المنطقية "صواب أو خطأ" ( صواب أو false ).
هذه الوظائف مفيدة للتحقق من خاصية.
ضع في اعتبارك مثالين لكتابة دالة منطقية تتحقق من رقم للتساوي
<الجسم>
أفضل طريقة:
نتيجة التعبير
ن٪ 2 == 0
سيكون صواب (صواب) أو خطأ (خطأ)
لا حاجة لكتابة بيان شرطي.
لا تفعل ذلك.
بالطبع ، يمكنك فعل ذلك ، لكن هذا يعد إدخالًا أطول.
<قبل> منطقي isEven (int n) { العودة (ن٪ 2 == 0) ؛ } <قبل> منطقي isEven (int n) { إذا (ن٪ 2 == 0) { العودة صحيح نبسب ؛ } آخر { عودة كاذبة؛ نبسب ؛ } }

وآخر ملاحظة حول العمل مع الوظائف والإجراءات: عدد الوظائف والإجراءات في البرنامج لا يقتصر. بالإضافة إلى ذلك ، يمكن لروتين فرعي واحد استدعاء روتين فرعي آخر وحتى نفسه.
أيضًا ، بعد أن يصل البرنامج إلى return في الوظيفة ، يتوقف البرنامج فورًا عن تنفيذ الوظيفة ويعيد القيمة.
أي أن المثال الثاني من الجدول يمكن أيضًا اختصاره على النحو التالي:
bool isEven (int n)
{
نبسب ؛ نبسب ؛ على & nbsp ؛ إذا (n٪ 2 == 0) {
نبسب ؛ نبسب ؛ نبسب ؛ على & nbsp ؛ على & nbsp ؛ إرجاع صحيح
نبسب ؛ نبسب ؛ على & nbsp؛}
نبسب ؛ نبسب ؛ عودة خطأ
}

نبسب ؛