eSs ♥ MiSurAtA نائب المدير العام
عدد المشاركات : 5997 العمر : 37 نقاط التميز : 230 عدد الأوسمة : 14 البلد : الحالة : الهواية : أوسمة المنتدي : أوسمة المسابقات :
| موضوع: جافا - العمليات على المتغيرات 2008-11-18, 18:30 | |
| العمليات على المتغيرات تنقسم الى ثلاثة انواع
عمليات رياضية وعمليات مقارنة وعمليات منطقية, وسوف نخوض فى كل جزئية بالتفصيل على النحو السابق
العمليات الرياضية: قبل ان نبدأ فيها يجب ان نشير الى جزئية هامة وهى كيفية اسناد القيمة الى المتغير كما لاحظت فى الدرس السابق نستخدم العلامة = (يساوى) وهذه العلامة تقوم باسناد ما على يمينها الى ما على يسارها
mah=15; // mah لاحظ اسندنا القيمة 15 الى المتغير newvar=mah; // اى اصبحت قيمته 15 newvar الى المتغير mah اسندنا قيمة المتغير
كما تلاحظ انه يمكن اسناد قيمة متغير الى متغير اخر وبذلك يصبح للمتغيرين نفس القيمة
لاشك ان احدا لايعرف العمليات الحسابية الاساسية وهى الجمع والطرح والضرب والقسمة لذلك لن نخوض فى هذه الجزئية كثيرا لان استخدامهم فى البرمجة مشابه الى حد كبير للواقع
للجمع نستخدم علامة + وللطرح - وللضرب * وللقسمة /
mah=15; addvar=mah+20; // قيمة المتغير 35 subvar=mah-5; // قيمة المتغير 10 mulvar=mah*2; // قيمة المتغير 30 div_var=mah/3; // قيمة المتغير 5
حتى الان لا يوجد اى اختلاف بين العمليات فى البرمجة وفى الواقع ولاتنسى انه يمكننا استخدام متغير كقيمة للجمع بدلا من القيم الثابتة
var1=30;
var2=20;
addvar=var1+var2; // قيمة المتغير 50
والان ماذا إذا اردنا اضافة قيمة الى القيمة الحالية فى المتغير
Code..[
mah=20;
mah=mah+5; // قمنا باضافة 5 الى قيمة المتغير الحالية لتصبح 25
قد يبدو هذا غير منطقى وهو غير وارد رياضيا, اما معناه فى البرمجة هى اضافة 5 الى القيمة الحالية واسناد القيمة الجديدة الى نفس المتغير لتصبح قيمته 25, (هذه الطريقة عامة اى يمكن من خلالها طرح او ضرب او قسمة القيمة وليس الاضافة فقط)
للتسهيل يمكن استخدام الطرق القادمة للحصول على نفس النتيجة السابقة
Code
mah=20;
mah+=5; // تعنى اضافة 5 الى القيمة الحالية فى المتغير
mah-=5; // تعنى طرح 5 الى القيمة الحالية فى المتغير
mah*=5; // تعنى ضرب قيمة المتغير الحالية فى 5
mah/=5; //تعنى قسمة المتغير الحالية على 5
لاضافة (1) الى القيمة فى متغير يمكن استخدام احدى الصورتين السابقتين ولكن هناك صورة اخرى كما يظهر فى المثال التالى
code
mah=15; mah=mah+1; // الان اصبحت قيمة المتغير 16
mah+=1; // القيمة الان 17
mah++; // واخيرا القيمة اصبحت 18
السطر الاول والثانى يصلحان لاضافة (1) او اى قيمة اخرى للمتغير بينما السطر الثالث يعنى اضافة (1) فقط الى القيمة الحالية فى المتغير.
يمكن طرح (1) من قيمة المتغير ولكن بدلا من (++) نستخدم (--)
هناك عملية رياضية اخرى قد لا تكون تعاملت معها من قبل وهى باقى القسمة (%) لاحظ ان العلامة هنا لا تعنى النسبة المئوية وانما باقى القسمة
Code
mah=17;
modu=mah%4;
// المثال الثانى mah=16;
modu=mah%4;
فى المثال الاول الناتج هو 1 وذلك لان اقرب عملية قسمة صحيحة بين الرقمين هى 16/4 لذا الباقى 1. اما المثال الثانى فأن باقى القسمة هو 0 لان 16 يقبل القسمة على 4.
إجراء اكثر من عملية فى وقت واحد واستخدام الاقواس
Code
mah=3+2*2
هنا قد يقول البعض ان النتيجة 10 ويستند الى جمع 3 و 2 ثم ضرب الناتج فى 2 ويقول البعض الاخر ان الاجابة 7 لان الضرب اولا ثم الجمع, والجواب الثانى هو الصحيح لان الضرب يسبق الجمع فى طابور العمليات وحتى تتجنب هذا فإن استخدام الاقواس أسلم طريقة
Code
mah=(3+2)*2 // الناتج 10
mah=3+(2*2) // الناتج 7
كما تلاحظ ان الاقواس تحدد اى العمليتين يتم اولا
العمليات على المتغيرات النصية: يمكنك فقط جمع المتغيرات النصية مثال
Code..
لاحظ الناتج بنفسك ولاضافة مسافة بين الكلمتين يمكنك اضافتها فى نهاية الاولى او بداية الثانية او اضافتها مباشرة بينهم مثل
Code
(boolean) وهى متغيرات تحتوى اما على صحيح true او خطأ false
Code..
mah=true; // القيمة صحيح
mah=false; // القيمة خطأ
احتمالات العلاقة بين القيم تتلخص فى الاتى اكبر من او اصغر من او يساوى او لايساوى او (اكبر من او يساوى) او (اصغر من او يساوى)
Code..
(>) اكبر من var1 > var2
(<) اصغر من
var1 < var2
(==) يساوى
var1 == var2
(>=) اكبر من او يساوى
var1 >= var2
(<=) اصغر من او يساوى
var1 <= var2
(!=) لا يساوى
var1 != var2
ما معنى العمليات السابقة , انها تختبر هل العلاقة صحيحة ام لا اى مثلا فى السطر الاول تختبر هل var1 اكبر من var2 وإذا كان فإن العلاقة تكون صحيحة true والا فإنها تكون خطأ false
Code
var1 = 30
var2 = 20
mah= (var1 > var2)
المتغير mah فى هذه الحالة سيحتوى على صحيح true ,وهكذا هو متغير ثنائى الحالة (boolean)
Code
mah = (30>=30) // true
mah = (30 != 29) // true
mah= (15 == 14) // false
كما تلاحظ ان المتغير سيحتوى على صحيح true اذا كانت العلاقة صحيحة او خطأ false إذا كانت العلاقة خاطئة.
لاحظ العلامة المزدوجة (==) والتى تختبر هل القيم متساوية ام لا.
العلاقات المنطقية
العلامة (&&) تعنى (و) والعلامة (||) تعنى (أو)
لكى تحصل على العلامة(|) قم بالضغط على مفتاح (shift) و backslash (\) معا
تستخدم العلاقات المنطقية مع علاقات المقارنة لعمل مقارنات اكثر تعقيدا من السابقة
mah = ((50 > 30) && (45 == 45))
لكى تصبح العلاقة صحيحة يجب ان يكون شقيها صحيحين وهذا محقق بالفعل لذلك mah يحتوى على true
mah = ((50 > 30) && (45==45) && (30 < 15))
هل العلاقة السابقة صحيحة ام لا؟ نعم غير صحيحة فالشق الثالث غير صحيح وكما ذكرنا ان (&&) تعنى (و) اى يكون الشق الاول صحيح والثانى والثالث ايضا
استخدام أو (||)
mah = ((45==45) || (30 < 15))
العلاقة صحيحة رغم ان الشق الثانى خطأ لأن العلامة المستخدمة هى (أو) اى إذا كان اى من اجزاء العلاقة صحيح تكون العلاقة صحيحة, والحالة الوحيدة التى تجعل العلاقة خاطئة هى ان تكون جميع الاجزاء خاطئة.
والخلاصة فى حالة العلامة (&&) أى (و) لكى تكون العلاقة صحيحة يجب ان تكون جميع الاجزاء صحيحة والا فانها ستصبح خطأ. وفى حالة العلامة (||) أى (أو) لكى تكون العلاقة خاطئة يجب ان تكون جميع اجزائها خاطئة والا ستكون صحيحة.
العلامة (!) تعنى ليس او لا
mah = !(24 < 28)
لو لم توضع العلامة (!) لكانت العلاقة صحيحة, ولكن الان العلاقة خاطئة لان العلامة (!) تعنى ليس اى تعكس الحالة.
اجراء عمليات المقارنة على النصوص: يمكنك اختبار المساواة بين القيم النصية
var1="بي اتش بي العرب";
var2="بي اتش بي العرب";
check_var=(var1==var2) // true
check_var=(var1 != var2) //false
لاحظ ان فى الحالة الاولى العلاقة صحيحة true اما فى الثانية خاطئة false لانها تختبر عدم المساواة __________________
من العذاب .... ان تكتب لمن لا يقرأ لك
وان تنتظر من لا يأتي لك وأن تحب من لا يشعر بك وأن تحتاج من لا يحتاج لك من المؤلم ... أن تحب بصدق وتخلص بصدق ... وتغفر بصدق ثم تصدم في النهايه بموت كل الصدق الذي قدمته ثم تكتشف ان أجمل العمر كان سراباً سلام
| |
|
JaPaN_LoVeR نائبة المدير العام
عدد المشاركات : 4663 العمر : 36 نقاط التميز : 200 عدد الأوسمة : 15 البلد : الحالة : الهواية : أوسمة المنتدي : أوسمة المسابقات :
| موضوع: رد: جافا - العمليات على المتغيرات 2008-11-18, 20:32 | |
| شكرااااا على الموضوع | |
|
Star_100 عضو أساسي
عدد المشاركات : 4699 العمر : 36 نقاط التميز : 155 عدد الأوسمة : 10 البلد : الحالة : الهواية : أوسمة المنتدي :
| موضوع: رد: جافا - العمليات على المتغيرات 2008-11-19, 09:00 | |
| شكرا اخي علي الموضوع الرائع | |
|
JaPaN_LoVeR نائبة المدير العام
عدد المشاركات : 4663 العمر : 36 نقاط التميز : 200 عدد الأوسمة : 15 البلد : الحالة : الهواية : أوسمة المنتدي : أوسمة المسابقات :
| موضوع: رد: جافا - العمليات على المتغيرات 2008-11-20, 02:28 | |
| | |
|