تمارين بلغة الجافا

إرسال مساهمة في موضوع

اذهب الى الأسفل

تمارين بلغة الجافا

مُساهمة من طرف منى في الجمعة مايو 18, 2012 2:33 pm

سلام عليكم ورحمه الله وبركاته

اتمنى منكم مساعدتي بحل بعض التمارين لكتابه الاكواد بلغة الجافا
1_ اكتب برنامج لإدخال رقم الطالب . اسم الطالب .ومعدل الطالب وذلك لعشرة طلاب . حيث يقوم البرنامج بطباعة هذه المعلومات بالترتيب التصاعدي اعتماداً على رقم الطالب. وطباعتها مرة أخرى بالترتيب التنازلي اعتماداً على معدل الطالب
2_ اكتب برنامج لقراءة معدلات 10 طلاب وتخزين ما يكافئ هذه المعدلات من حروف في المصفوفة ثم يقوم البرنامج بترتيب محتويات المصفوفة ترتيباً اعتمد على مايلي لتحويل المعدلات إلى أحرف:
- إذا كان المعدل أقل من أو يساوي 100 وأكبر من أو يساوي 90 يصبح A
- إذا كان المعدل أقل من 90 وأكبر من أو يساوي 80 يصبح B
- إذا كان المعدل أقل من 80 وأكبر من أو يساوي 70 يصبح C
- إذا كان المعدل أقل من 70 وأكبر من أو يساوي 60 يصبح D
- إذا كان المعدل أقل من 60 وأكبر من أو يساوي صفر يصبح F
- إذا كان المعدل غير ذلك يقوم البرنامج بعرض رسالة خطأ . ويطلب إدخال معدل آخر ..
3_ اكتب برنامج لقراءة 15 رقم وتخزينها في مصفوفة بحيث يقوم البرنامج بالبحث عن عدد مرات تكرار الرقم X والذي يقوم المستخدم بإدخاله عن طريق لوحة المفاتيح ...
4_ لديك خمسة طلاب ولكل طالب منهم ثلاث درجات اكتب برنامج لقراءة درجات الطلاب الخمسة وتخزينها في مصفوفة ذات بعدين . بحيث يحسب البرنامج مجموع درجات كل طالب من الطلاب الخمسة وخزن هذه المجاميع في مصفوفة أخرى ( ذات بعد واحد ) ومن ثم يرتبها ترتيباً تنازلياً . بحيث يطبع البرنامج مايلي .
- أعلى درجة من درجات الطلاب .
-أعلى مجموع من المجاميع درجات الطلاب .
-محتويات المصفوفة ذات البعدين على شكل جدول .
- محتويات المصفوفة ذات البعد الواحد .
5_ اكتب برنامج لإدخال 10 أعداد وتخزينها في مصفوفة بحيث يقوم البرنامج بطباعة مايلي :
- الأعداد المخزنة في المصفوفة بشكل عكسي , أي في بداية الطباعة يقوم البرنامج بطباعة أخر عدد في المصفوفة ثم يطبع العدد الذي قبلة وفي النهاية يطبع أول عدد في المصفوفة
- أكبر عدد مخزن في المصفوفة وموقعة (Index) في المصفوفة .
- أصغر عدد مخزن في المصفوفة وموقعة (Index) في المصفوفة .
6_ شركة تمنح موظفيها راتباً شهرياً مقداره 2500 ريال سعودي .وتمنح الشركة نسبة 9% من مبيعات الموظف كعمولة تضاف إلى راتبه الشهري . اكتب برنامج يقرأ رواتب 10 موظفين ومجموع مبيعاتهم الشهرية بحيث تكون مخرجات البرنامج عبارة عن جدول يحتوي على عمولة المؤظف وإجمالي راتب الموظف المكتسب في نهاية الشهر
(إجمالي الراتب هو راتب الموظف 2500 ريال سعودي +9% من مجموع مبيعات الموظف في ذلك الشهر )
7 _ اكتب برنامج لقراءة 20 عدد صحيح وتخزينها في مصفوفة ومن ثم فحص جميع الإعداد المخزنة في هذه المصفوفة وتخزين الأعداد الفردية في مصفوفة أخرى . وفي نهاية البرنامج اطبع محتويات المصفوفتين . (ملاحظة : يجب أن يكون حجم المصفوفة التي ستحوي الأعداد الفردية مساوياً لعدد هذه الأعداد ).
ولكم جزيل الشكر
avatar
منى
.
.

تاريخ التسجيل : 17/05/2012
المساهمات : 3
النقاط : 5
التقيم : 0
الدولة : السعودية
الجنس : انثى

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: تمارين بلغة الجافا

مُساهمة من طرف منى في السبت مايو 19, 2012 9:03 am

Sad
avatar
منى
.
.

تاريخ التسجيل : 17/05/2012
المساهمات : 3
النقاط : 5
التقيم : 0
الدولة : السعودية
الجنس : انثى

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: تمارين بلغة الجافا

مُساهمة من طرف أحمد مناع في السبت مايو 19, 2012 4:00 pm

بداية أشكرك أختى الكرمية على تسجيلك فى هذا المنتدى المتواضع ....كما أشكرك على تنسيق مشاركتك ....أما بالنسبة لموضوع التمارين فأرجوا المعذرة على عدم تمكنى فى الرد عليها مبكرا وذلك لعدم قراءة الموضوع الا متأخرا ......



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





1_ اكتب برنامج لإدخال رقم الطالب . اسم الطالب .ومعدل الطالب وذلك لعشرة طلاب . حيث يقوم البرنامج بطباعة هذه المعلومات بالترتيب التصاعدي اعتماداً على رقم الطالب. وطباعتها مرة أخرى بالترتيب التنازلي اعتماداً على معدل الطالب






الحل :

الكود:


import javax.swing;
2. class Example1{
3. public static void main(String args[]){
4. int id[] = new int[10];
5. double marks[] = new double[10];
6. String names[] = new String[10];
7. String s;
8. String t1 = ”Enter the Student's id:”;
9. String t2 = ”Enter the Student's name:”;
10. String t3 = "Enter his mark:";
11.int temp;
12. for(int i=0; i<10; i++){
13. s=JOptionPane.showInputDialog(t2);
14. names[i]=s;
15. s=JOptionPane.showInputDialog(t1);
16.id[i]=int.parseint(s);
17. s=JOptionPane.showInputDialog(t3);
18. marks[i]=Double.parseDouble(s);
19. }
20. for(int i=1; i<id.length; i++)
21. for(int j=0; j<id.length-1; j++)
22. if(id[j]>id[j+1]){
23. temp=id[j];
24. id[j]=id[j+1];
25. id[j+1]=temp;
26.}
27. for(int i=0; i<id.length; i++)
28. output+=id[i]+" ";
29. JOptionPane.showMessageDialog(id, output, title,
      JOptionPane.INFORMATION_MESSAGE);
30. System.exit(0);
31. }
32. }
شرح الكود السابق :
السطر الاول :أستدعاء مكتبة swing  
السطر الثانى : قمنا بأنشاء كلاس يسمى Example1


السطر رقم 4 قمنا بتعريف مصفوفة أسمها id من نوع int وحجز 10 مواقع بها وذلك لتخزين رقم الطلاب بها ...بينما فى السطر رقم 5 تم تعريف مصفوفها أسمها marks من نوع  Double ليتم تخزين فيها معدلات أو درجات الطلاب ...وفى السطر رقم 6 قمنا ايضا بتعريف مصفوفة أسمها  names من نوع String لتخزين أسماء الطلاب فيها

ثم قمنا بتعريف عدد 3 متغيرات من نوع String وذلك لتحمل النص الذى سيظهر للمستخدم من خلال شاشة الادخال و ذلك من خلال الكلاس JOptionPane و يجب ملاحظة أن الامر showMessageDialog هي ميثود معناها: أظهر رسالة حوار نلاحظ في داخل القوسين  توجد كلمة t1,t2,t3 وهى المتغيرات التى ستحمل نص فى الرسالة كما قمنا بتعريفها سابقا  ، هذه الكلمة ستجعل الرسالة تظهر في منتصف الشاشة.

ثم بعد ذلك أستخدمنا جملة دوران لادخال أسماء و أرقام و درجات الطلاب العشرة فى المصفوفة بداية من السطر 12-19 ....



أما من السطر 20 حتى 25 هناك عمليتان دوارن متداخلتان يتم من خلالها ترتيب عناصر المصفوفة id ...وذلك لكوننا نريد ترتيب الطلاب أعتمادا على أرقامهم ..حيث تم فحص شريط الترتيب فى السطر رقم 22 واذا تحقق هذا الشرط يتم يتم تبديل عناصر المصفوفة بحيث يأخذ كل عنصر من عناصر المصفوفة مكان الاخر ....أما مخرجات هذا البرنامج هى طباعة عناصر المصفوفة بعد الترتيب من خلال الاسطر 27و 28





أما فى حالة الترتيب التنازلى أعتمادا على درجات الطلاب ...



الكود:


1. import javax.swing.*;
2. class Example1{
3. public static void main(String args[]){
4. int id[] = new int[10];
5. double marks[] = new double[10];
6. String names[] = new String[10];
7. String s;
8. String t1 = ”Enter the Student's id:”;
9. String t2 = ”Enter the Student's name:”;
10. String t3 = "Enter his mark:";
11.int temp;
12. for(int i=0; i<10; i++){
13. s=JOptionPane.showInputDialog(t2);
14. names[i]=s;
15. s=JOptionPane.showInputDialog(t1);
16.id[i]=int.parseint(s);
17. s=JOptionPane.showInputDialog(t3);
18. marks[i]=Double.parseDouble(s);
19. }
20. for(int i=1; i<mark.length; i++)
21. for(int j=0; j<mark.length-1; j++)
22. if(mark[j]<mark[j+1]){
23. temp=mark[j];
24. mark[j]=mark[j+1];
25. mark[j+1]=temp;
26.}
27. for(int i=0; i<mark.length; i++)
28. output+=mark[i]+" ";
29. JOptionPane.showMessageDialog(mark, output, title,
      JOptionPane.INFORMATION_MESSAGE);
30. System.exit(0);
31. }
32. }


ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم
avatar
أحمد مناع
.
.

تاريخ التسجيل : 15/02/2011
المساهمات : 859
النقاط : 201562
التقيم : 83
الدولة : مصر
الجنس : ذكر

http://egy-tech.forumegypt.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: تمارين بلغة الجافا

مُساهمة من طرف منى في السبت مايو 19, 2012 6:14 pm

شكرا الك Very Happy يعطيك الف عافيه

وجزاك الله خير
avatar
منى
.
.

تاريخ التسجيل : 17/05/2012
المساهمات : 3
النقاط : 5
التقيم : 0
الدولة : السعودية
الجنس : انثى

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: تمارين بلغة الجافا

مُساهمة من طرف أحمد مناع في الأحد مايو 20, 2012 12:18 pm

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] كتب:شكرا الك Very Happy يعطيك الف عافيه

وجزاك الله خير




الحمد لله أننا أستطعنا رسم البسمة على شفتيك بدلا من دموع أمس.....ومن أجل اعادة البسمة على وجهة كل أنسان أوعدك فى خلال هذا الاسبوع سيتم الاعلان عن دورة كاملة فى لغة الجافا ......قريبا جدا





تحياتى اليك

ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم
avatar
أحمد مناع
.
.

تاريخ التسجيل : 15/02/2011
المساهمات : 859
النقاط : 201562
التقيم : 83
الدولة : مصر
الجنس : ذكر

http://egy-tech.forumegypt.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

الرجوع الى أعلى الصفحة

ََ

مواضيع ذات صلة


 
صلاحيات هذا المنتدى:
تستطيع الرد على المواضيع في هذا المنتدى