الخوارزمياتالتعامل مع الباراميترات - التمرين الثاني
المطلوب
أكتب دالة إسمها Maximum, تعطيها عددين صحيحين, فترجع العدد الأكبر فقط.
ثم أطلب من المستخدم إدخال عددين.
بعدها قم بعرض العدد الأكبر بين هذين العددين بالإعتماد على الدالة Maximum().
ملاحظة: سبق أن شرحنا مبادئ المقارنة, لكننا الآن سنعلمك كيف تضع الكود في دالة و تستدعيه متى شئت.
النتيجة المطلوبة
لنفترض أن المستخدم قام بإدخال العددين 7 و 9.
الخوارزمية
كود الجافا
import java.util.Scanner; public class Parameters { /* ------------------------------- هنا قمنا بتعريف الدالة ------------------------------ */ public static int Maximum (int a, int b) { if ( a > b ) { return a; } else { return b; } } /* --------------------------- من هنا يبدأ البرنامج بالتنفيذ --------------------------- */ public static void main (String[] args) { Scanner input = new Scanner(System.in); int num1; int num2; System.out.print("Enter first number: "); num1 = input.nextInt(); System.out.print("Enter second number: "); num2 = input.nextInt(); System.out.print("The max is: "+ Maximum(num1, num2) +"\n"); } }
شرح الكود
public static int Maximum (int a, int b) { if ( a > b ) { return a; } else { return b; } }
- هنا أنشأنا الدالة
Maximum()و حددنا أن نوعهاintلأننا نريدها أن ترجع عدد صحيح, و وضعنا لها باراميترينaوb. - إذاً, عند إستدعاء هذه الدالة يجب أن نمرر لها عددين نوعهما
intو عندها ستقوم بمقارنة هذين العددين و ترجع العدد الأكبر بينهما إلى المكان الذي تم إستدعاءها منه.
public static void main (String[] args) { Scanner input = new Scanner(System.in); int num1; int num2; System.out.print("Enter first number: "); num1 = input.nextInt(); System.out.print("Enter second number: "); num2 = input.nextInt(); System.out.print("The max is: "+ Maximum(num1, num2) +"\n"); }
- بما أن الدالة
main()تمثل نقطة البداية بالنسبة للكمبيوتر, فهذا يعني أنه عند تشغيل البرنامج سيبدأ بتنفيذ الأوامر الموضوعة فيها. - في السطرين 28 و 29 قمنا بتجهيز المتغير
num1لتخزين أول عدد سيدخله المستخدم لاحقاً. و المتغيرnum2لتخزين ثاني عدد سيدخله المستخدم. - من السطر 31 إلى السطر 35 سيطلب من المستخدم إدخال عددين, و سيتم تخزينهما في المتغيرين
num1وnum2. - في السطر 37 قمنا باستدعاء الدالة
Maximum()بداخل دالة الطباعةSystem.out.print()لطباعة العدد الأكبر بين العددين اللذين أدخلهما المستخدم.