تدريب عملي
التدريب العملي 42: دالة تعيد قيمة ودالة بمعاملين
sum تعيد مجموع عددين، وprintText تطبع نصًّا عددًا من المرات.
من الدرس 9. الدوال · كل التدريبات
١نص المسألة
اكتب دالة sum تستقبل عددين صحيحين وتعيد مجموعهما، ودالة printText تستقبل نصًّا وعددًا x وتطبع النص x مرة مسبوقًا برقم السطر. استخدم الدالتين في main.
٢الخوارزمية المقترحة
أ) تصميم الدوال
- دالة sum تستقبل عددين:
- احسب مجموعهما
- أعد المجموع
- دالة printText تستقبل نصًّا وعددًا x:
- كرّر x مرة: اطبع رقم السطر ثم النص
ب) خطوات البرنامج الرئيسي
- ابدأ
- استدعِ sum بالعددين 10 و 3، وخزّن الناتج في ans
- اطبع ans
- اطبع ناتج sum للعددين 18 و 4 مباشرة
- استدعِ printText بالنص Ali والعدد 3
- توقف
٣خطوات التطبيق
في NetBeans
- أنشئ مشروعًا جديدًا: File ← New Project ← Java with Ant ← Java Application.
- اكتب اسم المشروع، وفعّل Create Main Class.
- اكتب الكود ثم نفّذ بـ Run (F6).
في OneCompiler
- افتح OneCompiler من زر «▶ شغّل المشروع» أسفل الحل، أو من موقع onecompiler.com/java.
- في OneCompiler تُكتب كل الكلاسات في ملف واحد Main.java؛ زر التشغيل يجمعها لك تلقائيًّا.
- إذا كان البرنامج يقرأ من لوحة المفاتيح، فاكتب المدخلات في خانة STDIN التي تظهر تحت الكود في محرّر OneCompiler، ثم اضغط Run.
٤المخرجات المطلوبة
نفّذ برنامجك، ويجب أن تظهر المخرجات التالية:
run:
10 + 3 = 13
18 + 4 = 22
1. Ali
2. Ali
3. Ali
BUILD SUCCESSFUL (total time: 0 seconds)
٥الحل المقترح
حاول بنفسك أولًا، ثم قارن حلّك بالحل المقترح (كود التدريب من مذكرة العملي):
👁 اعرض الحل المقترح
package javaapplication2;public class JavaApplication2 { static int sum(int x, int y){ int z = x + y; return z; } static void printText(String text, int x){ for (int i = 1; i <= x; i++) { System.out.println(i + ". " + text); } } public static void main(String[] args) { int ans = sum(10, 3); System.out.println("10 + 3 = " + ans); System.out.println("18 + 4 = " + sum(18, 4)); printText("Ali", 3); }}
run:
10 + 3 = 13
18 + 4 = 22
1. Ali
2. Ali
3. Ali
BUILD SUCCESSFUL (total time: 0 seconds)
أسئلة المناقشة
أسئلة مناقشة على التدريب 2. إجاباتك تُحفظ تلقائيًّا على هذا الجهاز؛ أجب ثم اضغط «صحّح ورقتي».
1السؤال الأول: اختر الإجابة الصحيحة
1) ما نوع البيانات الراجعة من الدالة sum()?
2) ماذا تعني كلمة return في دالة sum()?
3) ماذا سيحدث إذا حذفنا كلمة return من الدالة sum()?
4) ما نوع المعاملات في الدالة sum()?
5) ما نوع المعاملات في الدالة printText()?
6) هل يمكن استدعاء sum() بدون أي معاملات؟
7) إذا استدعينا printText("Hello", 0), ماذا سيظهر على الشاشة؟
8) ما هو ناتج sum(18, 4)?
9) ما هو عدد مرات طباعة كلمة "Ali" عند استدعاء printText("Ali", 3)?
أجب عن الأسئلة ثم اضغط «صحّح ورقتي».