برامج

دورة الجافا (الدرس الخامس) تابع الجمل الشرطية [الأرشيف] - برامج نت

المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : دورة الجافا (الدرس الخامس) تابع الجمل الشرطية


loayy
10-20-2005, 08:14 AM
بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله

إن شاء الله موعدنا اليوم مع الدرس الخامس
وسنكمل موضوعنا عن الجمل الشرطية الإختيارية والتكرارية "conditional statements" وسنبدأ بأخر جملة فى الجمل الشرطية الإختيارية " selection " وهى جملة ال " switch " ثم نتحدث عن الجمل الشرطية التكرارية " loops "

أولا : switch
وتكتب هكذا



switch ( متغير )
{
case حالة 1 :
// مجموعة الأوامر التى ستنفذ عندما يساوى المتغير الحالة 1
break;
case حالة 2 :
//مجموعة الأوامر التى ستنفذ عندما يساوى المتغير الحالة2
break;
default :
// مجموعة الأوامر التى ستنفذ عندما لا يساوى المتغير أى حاله
}


و لننظر المثال التالى ونفهمه سويا
وهو يعتبر تقريبا نفس المثال السابق ولكن إستخدمنا ال switch بدلا من ال if


package courseexampels;
import javax.swing.JOptionPane;

public class Switchexample
{
public static void main(String[] args)
{
int x,y,z;
int choice;
x = Integer.parseInt(JOptionPane.showInputDialog("enter x"));
y= Integer.parseInt(JOptionPane.showInputDialog("enter y"));
choice = Integer.parseInt(JOptionPane.showInputDialog("enter 1 for addition 2 for substraction 3 for multiplication 4 for division "));

switch (choice)
{
case 1:
z=x+y;
JOptionPane.showMessageDialog(null,"the addition result is "+ z);
break;

case 2:
z=x-y;
JOptionPane.showMessageDialog(null,"the substraction result is "+ z);
break;

case 3:
z=x*y;
JOptionPane.showMessageDialog(null,"the multiplication result is "+ z);
break;

case 4:
z=x/y;
JOptionPane.showMessageDialog(null,"the division result is "+ z);
break;

default :
JOptionPane.showMessageDialog(null," you didn't choose any valid option ");
}

System.exit(0);
}
}




ولنشرح المثال الأن :
إذا أمعنا النظر سنجد أنه نفس المثال المستخدم فى الدرس السابق ولكن قمنا ببعض التعديل فجعلنا المستخدم يدخل رقما يدل على العملية المراد إتمامها بدلا من إختصار لإسم العملية ولنشرح ال switch حيث أننا قمنا بشرح الأوامر السابقه لها فى الدرس السابق
لقد وضعنا إسم المتغير فى الswitch لنجرى عليه الإختبارات فى الحالات cases
عند السطر case 1 يتم إختبار المتغير إذا ما كان يساوى 1 أم لا فإذا كان ما يساوى 1 فإنة يتم تنفيذ ما يليه حيث يتم جمع المتغيرين x,y ثم طبع النتيجة فى رسالة على الشاشه ثم يتم تنفيذ الbreake حيث يتم تنفيذ ما بعد ال switch أى الخروج من ال switch أما إذا لم يساوى المتغير 1 فإنه يتم إختبار ما إذا كان يساوى 2 أم لا فإذا كان ما يساوى2 فإنة يتم تنفيذ ما يليه حيث يتم طرح المتغيرين x,y ثم طبع النتيجة فى رسالة على الشاشه ثم يتم تنفيذ الbreake حيث يتم تنفيذ ما بعد ال switch أى الخروج من ال switch أما إذا لم يساوى المتغير 2 فإنه يتم إختبار ما إذا كان يساوى 3 أم لا وهكذا حتى نصل إلى أن المتغير لا يساوى أى خيار من الخيارات المتاحه وعندها يتم تنفيذ الكود الخاص بال default حيث تخرج رسالة إلى المستخدم تخبره بأنه إختار رقم لايحقق أى عملية

ملحوظة : ما هى فائدة الbreake ؟؟؟
عند عدم إستخدام ال breake يتم تنفيذ ما يحقق الشرط وما يلى هذه ال case مثلا إذا قام المستخدم بإدخال رقم 2 فإنه سيتم تنفيذ الحالة الخاصة بالرقم 2 وما يليها أى الخاصة ب 3،4 وكذلك ال default وهو ما لا نريده ولذا نستخدم الbreake

الواجب الخاص بالswitch هو تنفيذ الواجب الخاص بالدرس السابق بإستخدام الswitch

إن شاء الله سنبدأ الأن بشرح الجمل الشرطية التكرارية "loops" والمقصود بالتكراريه هو أنها تقوم بتنفيذ مجموعة من الأوامر عدة مرات عند تحقق شرط ما أو عدم تحققه وسنرى معنى ذلك فى الأمثلة ولنبدأ بإذن الله

أولا : جملة ال for
وهى تكتب كالتالى


For (int i=0;condition;i++)
{
// الأوامر التى ستنفذ هنا
}

إذا قمنا بكتابة ال for بهذه الطريقة فإن الكود سينفذذ منذ أن يكون المتغير يساوى صفراً وحتى يتحقق الشرط ويزداد المتغير بواحد عند نهاية الكود فى كل مرة ينفذ فيها ولنرى سويا المثال التالى على هذه الطريقة


package courseexampels;
import javax.swing.JOptionPane;

public class forexample
{
public static void main ( String args[])
{
int x,result;
result = 1;
x =Integer.parseInt(JOptionPane.showInputDialog("enter x" ));

for(int j=1;j<=x;j++)
result = result * j;

JOptionPane.showMessageDialog(null,"the factorial result = " + result);
System.exit(0);
}
}

يقوم المثال بحساب المضروب للرقم الذى يدخله المستخدم والمضروب "factorial " هو ضرب الأعداد من واحد وحتى الرقم المدخل من قبل المستخدم فمثلا مضروب 4 يساوى 24 ( 1*2*3*4) وهكذا
واللبرنامج كما هو واضح سهل وبسيط ولننظر سويا إلى إلى البرنامج ولنبدأ الشرح سويا قمنا بتعريف متغيرين هما x و result وسنستخدم الأول لنضع به الرقم المدخل من المستخدم والأخر لنضع به النتيجه النهائيه ووضعنا له قيمة مبدئيه تساوى واحد
وقمنا بإستخدام الfor لعملية الضرب التكراريه
حيث عرفنا متغير j ووضعنا قيمة مبدئية له تساوى 1 وقارنا ال j بال x فإذا كان يساويه أو أقل منه فإننا نضرب ال result فى ال j ثم نضع النتيجة فى result مرة أخرى ثم تزداد قيمة ال j بواحد وتتم المقارنة مرة أخرى وهكذا حتى يصبح الj أكبر من ال x وهنا لايتم تنفيذ ال for ويتم ظهور رسالة بها نتيجة العملية الحسابية

الواجب الخاص بال for هو عمل برنامج يقوم بحساب رقم أس رقم أخر
مثال 3 أس 2 = 3*3 =9


وإن شاء الله فى الدرس القادم سنكمل حديثنا عن ال for و بقية الجمل الشرطيه التكراريه

انتهى درس أخي حسين جزاه الله كل خير

أخوكم / لؤي (أبو العبد)

Tameeem
12-10-2006, 03:33 PM
ومازلنا نستفيد منك أخي لؤي
بارك الله فيك وكثّر الله من أمثالك

ممكن توضح لي الخطأ هنا وين ::

http://wow32.com/out.php/i10589_aasss.jpg

مع جزيل الشكر
..

zakimoulayabdellah
12-10-2006, 05:27 PM
thiiinks friend

hamata00
12-10-2006, 06:31 PM
بارك الله فيك

loayy
12-10-2006, 06:47 PM
بسم الله الرحمن الرحيم

أخي الكريم tameem

حياك الله أخي الكريم وإن شاء الله تستفيد أخي كمان وكمان أعتقد أخي أن المشكلة هي بسبب وجود جملة package

حاول أخي الكريم أن تنفذ البرنامج بدون وجود جملة package وإن شاء الله البرنامج سيعمل عندها بدون مشاكل

آسف أخي لتأخري في الرد بسبب أنني منذ مدة لم أدخل الإيميل بسبب مشكلة الترميز كما أنني منذ مدة لم أدخل موقع برامج نت على كل حال لا تترد أخي الكريم في أي سؤال

علما بأن إيميلي هو : loayyn@yahoo.com

وبارك الله فيكم إخواني الكرام جميعا بدون استثناء وجزاكم الله كل خير على حسن الرد

أخوكم في الله / لؤي (أبو العبد)

Ahmed_ghanam
12-10-2006, 08:16 PM
مشكور اخى الكريم لؤى

loayy
12-11-2006, 05:15 AM
بسم الله الرحمن الرحيم

لا شكر على واجب أخي الكريم احمد وصدقني لم أنسك أخي الكريم والدليل أن اسمك لا يزال عندي مخزن في الماسنجر

جزاك الله كل خير على حسن الرد

أخوك المحب لك في الله / لؤي (أبو العبد)

dangui80
12-12-2006, 02:23 AM
السلام عليكم و رحمة الله تعالى و بركاته
جزاك الله على هدا البرنامج الجيد و الهام
هل لديك دروس في j2me
.dangui80@hotmailcom

loayy
12-12-2006, 06:25 AM
بسم الله الرحمن الرحيم

بحثت لك عن كتب بخصوص
j2me فوجدت التالي :

http://rapidshare.de/files/17781350/06041101.rar.html

كتاب آخر

http://rapidshare.de/files/17706658/06041002.rar.html

وهذا أيضا

http://rapidshare.de/files/17705690/06041001.rar.html

كلمة السر لفتح الكتب هي :

www.ITeBookHome.com

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

أخوك المحب لك في الله / لؤي (أبو العبد)

الفرعون المحترف
12-12-2006, 10:06 AM
الف شكر يا استاذ
مميز بارك الله فيك

loayy
12-12-2006, 10:16 AM
بسم الله الرحمن الرحيم

لا شكر على واجب أخي الكريم المشرف الكريم / الفرعون المحترف

شرفني تواجدك في موضوعي وجزاك الله كل خير على حسن الرد

أخوك المحب لك في الله / لؤي (أبو العبد)

raiyd11
12-12-2006, 04:57 PM
الف الف شكر

loayy
12-13-2006, 06:49 AM
بسم الله الرحمن الرحيم

لا شكر على واجب أخي الكريم وجزاك الله كل خير على حسن الرد

أخوك المحب لك في الله / لؤي (أبو العبد)

magicxsteph
12-24-2008, 06:37 AM
السلام عليكم و رحمة الله تعالى و بركاته
جزاك الله على هدا البرنامج الجيد و الهام
هل لديك دروس في j2me
.dangui80@hotmailcom

الرابط الاول لا يعمل

loayy
02-09-2009, 06:49 AM
بسم الله الرحمن الرحيم

لم أفهم عليك أخي أي رابط الذي لا يعمل

أخوك المحب لك في الله / لؤي (أبو العبد)

Aboud Aboud
02-09-2009, 09:02 AM
الف شكر عالدورة المفيدة ... ومنتظرين جديدك

loayy
02-09-2009, 09:47 AM
بسم الله الرحمن الرحيم

لا شكر على واجب وجزاك الله كل خير وبارك الله فيك على حسن الرد

أخوك المحب لك في الله / لؤي (أبو العبد)

بدر63
02-11-2009, 12:07 PM
اخي لؤي يعطيك الف عافبة على الدورة الرائعة

لكن اخي في بعض الدروس لاتوجد الصور

وانا لااعرف كيف اعمل كومبايلر للجافا اذا ممكن تعرف شرح بالتفصيل لعمل كومبايلر لكود الجافا

loayy
02-12-2009, 06:29 AM
بسم الله الرحمن الرحيم

الله يزيدك عافية أخي بدر63 وجزاك الله كل خير وبارك الله فيك على حسن الرد

بالنسبة للصور أخي موجودة في ملف مرفق وخاصة في الدرس الأول

بالنسبة لعملية تنفيذ كود الجافا هي أيضا موجودة في الدورة وذلك في الدرس الأول أو الثاني لا أذكر بالضبط لأنني وضعت الدورة منذ عدة سنوات

أخوك المحب لك في الله / لؤي (أبو العبد)