0% found this document useful (0 votes)
4 views

Java

تتناول الوثيقة موضوع اختبار الشروط في لغة جافا، حيث تشمل شرح جمل الشرطية مثل if وelse وelse if وswitch، بالإضافة إلى الحلقات التكرارية مثل while وdo-while وfor. كما تحتوي على أمثلة وتمارين عملية لتطبيق المفاهيم المذكورة. الوثيقة تهدف إلى تعليم كيفية استخدام الشروط والحلقات في برمجة جافا.

Uploaded by

emana28948
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

Java

تتناول الوثيقة موضوع اختبار الشروط في لغة جافا، حيث تشمل شرح جمل الشرطية مثل if وelse وelse if وswitch، بالإضافة إلى الحلقات التكرارية مثل while وdo-while وfor. كما تحتوي على أمثلة وتمارين عملية لتطبيق المفاهيم المذكورة. الوثيقة تهدف إلى تعليم كيفية استخدام الشروط والحلقات في برمجة جافا.

Uploaded by

emana28948
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 36

Session Four JAVA CONDITIONAL TESTING

‫محتوى الدرس‬
➢ Java If....Else
➢ Java Switch
➢ Java While Loop
➢ Java For Loop
➢ Exercises
Java If…Else
‫الجمل الشرطية‬
‫‪Java Conditions and If Statements‬‬
‫❑ يمكنك استخدام هذه الشروط ألداء إجراءات مختلفة لقرارات مختلفة‪.‬‬
‫❑ تحتوي ‪Java‬على العبارات الشرطية التالية‪:‬‬

‫▪ نستعمل ‪ if‬لتحديد جزء من الكود ليتم تنفيذه‪ ،‬في حالة كان الشرط صحيحا ‪true‬‬
‫▪ نستعمل ‪ else‬لتحديد جزء من الكود ليتم تنفيذه‪ ،‬في حالة كان الشرط نفسه خاطئا ‪false‬‬
‫▪ نستعمل ‪ else if‬لتحديد شرط جديد لالختبار‪ ،‬اذا كان الشرط االول خاطئ ‪false‬‬
‫▪ نستعمل ‪ Switch‬لتحديد العديد من الحاالت في الكود لتنفيذ أي منها‬
‫الجمل الشرطية ‪If Statements‬‬
‫عندما تكون قيمة الشرط ‪ condition‬صحيحا‬
‫يتم تنفيذ ‪ statement1‬وتجاهل ‪else‬‬
‫‪1‬‬ ‫والذي يليها‪ ،‬وعندما يكون الشرط غير‬
‫صحيح يتم تجاهل ‪ statement1‬وتنفيذ‬
‫العبارة ‪ Statement2‬الموجودة في ‪، else‬‬
‫وكما في عبارة ‪ ،if‬اذا كان هناك اكثر من امر‬
‫مطلوب تنفيذه في حالة كانت قيمة الشرط‬
‫‪2‬‬ ‫خاطئ توضع االوامر بين اقواس } {‬
‫‪If Statement‬‬
‫➢نستعمل ‪ if‬لتحديد جزء من الكود لتنفيذه في حالة كان الشرط صحيحا ‪true‬‬
‫➢بنية الكود ‪Syntax‬‬

‫‪if (condition) { // block of code to be‬‬


‫} ‪executed if the condition is true‬‬

‫➢الحظ التالي‪ if :‬البد أن تكتب بأحرف صغيرة ‪ ،lowercase‬في حالة تمت كتابتها بأحرف كبيرة ‪ Uppercase‬مثل ‪ If‬أو‬
‫‪ IF‬سوف يظهر ‪error‬‬
‫أمثلة‬

if (25 > 18) {


System.out.println("25 is greater than 18");
}

int x = 25; int y = 18;


if (x > y) {
System.out.println("x is greater than y");
}
The else Statement
false ‫ لتحديد جزء من الكود لتنفيذه في حالة كان الشرط خاطئ‬else ‫➢ نستخدم‬
➢Syntax:

if (condition) {
// block of code to be executed if the condition is true
}
else {
// block of code to be executed if the condition is false
}
‫مثال‬

int time = 21;


if (time < 18) {
System.out.println("Good day.");
} else {
System.out.println("Good evening.");
} // Outputs "Good evening."
The else if Statement
false ‫ لتحديد شرط جديد في حالة كان الشرط االول خاطئ‬else if ‫➢نستخدم‬
➢Syntax:
if (condition1) {
// block of code to be executed if condition1 is true
} else if (condition2)
{
// block of code to be executed if the condition1 is false and
condition2 is true
}
else {
// block of code to be executed if the condition1 is false and
condition2 is false
}
‫مثال‬
int time = 16;
if (time < 10) {
System.out.println("Good Morning.");
} else if (time < 18) {
System.out.println("Good Afternoon."); }
else {
System.out.println("Good Evening.");
} // Outputs "Good Afternoon."
Exercise
Make a Java Program to do the following:
- name the class : MyDegree

- create an object called input (to use Scanner class).


- make a new variable called Degree to take number value from the user.
- print Enter your Degree: message with Degree value
- check if the Degree value is greater than 50 , print “Pass” message , if not
print “Fail” message
Solution
Class MyDegree
{
public static void main (String args [])
{
int Degree;
Scanner input = new Scanner(System.in);
System.out.println("Enter your Degree:");
Degree = input.nextInt();
if (Degree>=50) {
System.out.println("Pass"); }
else {
System.out.println("Fail"); }
}
}
Java Switch
Java Switch Statement
switch ‫ يمكننا استعمال العبارة‬، if..else ‫➢بدال من كتابة العديد من جمل‬
‫ واحد من الحاالت في الكود لتنفيذها‬switch ‫➢تحدد عبارة‬
switch(expression) {
case x:
// code block
break;
case y:
// code block
break;
default:
// code block
}
Java Switch Statement
‫كيف تعمل ؟ ‪How it works‬‬
‫➢الطريقة التي يعمل بها‪:‬‬
‫➢يتم تنفيذ تعبير‪ switch‬مرة واحدة‪.‬‬
‫➢تتم مقارنة قيمة تعبير ‪ switch‬مع القيم بداخل كل حالة ‪Case‬‬
‫➢في حالة وجود تطابق يتم تنفيذ الكود المرتبط بهذه الحالة ‪Case‬‬
‫➢ كلمات ‪ default ، Break‬هي اختيارية‬
‫مثال‬
int day = 5;
switch (day) {
case 1:
‫هذا المثال يستخدم رقم يوم االسبوع لحساب‬
System.out.println("Monday");
break; : ‫اسم اليوم في االسبوع‬
case 2:
System.out.println("Tuesday");
break;
case 3:
System.out.println("Wednesday");
break;
case 4:
System.out.println("Thursday");
break;
case 5:
System.out.println("Friday");
break;
case 6:
System.out.println("Saturday");
break;
case 7: System.out.println("Sunday");
break; } // Outputs “Friday" (day 5)
‫‪Break Keyword‬‬
‫➢عندما تصل ال ‪ Java‬لكلمة ‪ break‬فإنها تخرج مباشرة من كود ال ‪switch‬‬
‫➢سوف يؤدي هذا إلى وقف تنفيذ الكود التالي وعبارات ‪ case‬التي تليها‬
‫➢ عند وجود تطابق لحالة من حاالت ‪ case‬يتم عمل ‪ break‬بعدها‬
‫➢ يمكن أن يوفر ‪ break‬الكثير من وقت التنفيذ ألنه "يتجاهل" تنفيذ باقي الكود في مجموعة ‪.switch‬‬
Default Keyword
case ‫ جزء من الكود ليتم تنفيذه في حالة عدم وجود تطابق مع أي حالة من حاالت‬default ‫➢ تحدد‬
int day = 4;
switch (day) {
case 1: System.out.println("Today is Saturday");
break;
case 2: System.out.println("Today is Sunday");
break;
default:
System.out.println("Looking forward to the Weekend"); }
// Outputs "Looking forward to the Weekend"

break ‫ لن نحتاج لكتابة‬switch ‫ كأخر عبارة في‬default ‫ اذا استعملنا‬:‫الحظ التالي‬


Exercise
➢Insert the missing parts to complete the following switch statement.

int day = 3;

switch ( ) {

1: System.out.println("Today is Saturday");
break;

2: System.out.println("Today is Sunday");
;
Java Loops
‫الحلقات التكرارية ‪Loops‬‬
‫تقوم بتنفيذ جزء معين من الكود طالما يتم تحقيق شرط معين‬ ‫▪الحلقات التكرارية ‪:Loops‬‬
‫مفيدة النها توفر الوقت وتقلل االخطاء وتجعل الكود سهل قراءته‬ ‫▪ ‪Loops‬‬
‫▪ في كثير من البرامج نحتاج لتكرار تنفيذ جزء معين من الكود لعدد من المرات‪ ،‬مثال‪ :‬اذا كان البرنامج يقوم بقراءة وادخال اسماء ‪50‬‬
‫شخص‪ ،‬ليس من المنطقي أن نكتب ‪ 50‬عبارة قراءة مختلفة‪ ،‬او اذا كان البرنامج يطبع االعداد من ‪ ،1000 – 1‬والنه سوف يكون‬
‫طويل جدا ان نفذناه بهذه الطريقة لذلك سوف نحتاج لتكرار تنفيذ بعض العبارات بداخل البرنامج‪.‬‬

‫▪ توفر ‪ Java‬ثالثة أنواع مختلفة للتكرار‪:‬‬


‫▪ ‪while‬‬
‫▪ ‪do-while‬‬
‫▪ ‪for loop‬‬
While Loop
true ‫ صحيحة‬condition ‫ تقوم باللف وتكرار جزء من الكود طالما قيمة الشرط المحدد‬:while loop ▪

▪Syntax:
while (condition) {
// code block to be executed
}
‫مثال‬
‫▪ في هذا المثال‪ ،‬سيتم تنفيذ الكود مرارا وتكرارا ‪,‬طالما قيمة ‪ (i) variable‬اقل من ‪5‬‬

‫;‪int i = 0‬‬
‫{ )‪while (i < 5‬‬
‫;)‪System.out.println("i=" + i‬‬
‫;‪i++‬‬
‫}‬

‫▪الحظ‪ :‬ال تنسى زيادة قيمة المتغير ‪ Variable‬المستخدم في الشرط ‪ condition‬وإال ‪ while loop‬لن‬
‫تنتهي ابدا‪.‬‬
‫‪Do-While Loop‬‬
‫▪ ‪ Do-while loop‬هي مشابهة لـ ‪ ، while loop‬هذه الحلقة سوف تقوم بتنفيذ الكود مرة قبل‬
‫قبل التأكد من صحة الشرط (اذا كان الشرط صحيحا) ‪ ،‬ثم تكرر الحلقة ‪ loop‬طالما الشرط ما زال‬
‫صحيحأ‪.‬‬
‫▪ هي شبيهة بحلقة ‪ while‬إال أنه يتم اختبار شرطها في نهاية الحلقة‪ ،‬أي أنها تقوم بتنفيذ العبارات‬
‫الموجودة بداخلها ثم اختبار قيمة الشرط لتحديد استمرارية تكرار عباراتها او توقفها‪.‬‬
‫‪▪Syntax:‬‬
‫{ ‪do‬‬
‫‪// code block to be executed‬‬
‫;)‪} while (condition‬‬
‫مثال‬
‫▪في هذا المثال‪ :‬سيتم دائما تنفيذ الحلقة مرة واحدة على األقل‪ ،‬حتى لو كان الشرط خاطئا‪ ،‬الن الكود‬
‫سيتم تنفيذه مرة قبل اختبار الشرط‬
‫;‪int i = 0‬‬
‫{ ‪do‬‬
‫;)‪System.out.println("i=" + i‬‬
‫;‪i++‬‬
‫;)‪} while (i < 5‬‬

‫▪الحظ‪ :‬ال تنسى زيادة قيمة المتغير ‪ Variable‬المستخدم في الشرط ‪ condition‬وإال الحلقة ‪ loop‬لن‬
‫تنتهي ابدا‪.‬‬
Exercise
➢Print i as long as i is less than 6.

int i = 1;
(i < 6) {
System.out.println(i);
;
}
Exercise
100 ‫ لحد‬12 ‫➢اكتب الكود لطباعة مضاعفات رقم‬

:‫الحل‬
int i = 12;
do {
System.out.println("i=" + i);
i +=12;
} while (i <=100);
‫‪For Loop‬‬
‫▪عندما تعرف بالضبط عدد المرات التي تريد تكرارها لتنفيذ هذا الكود خالل الحلقة نستخدم ‪for‬‬
‫‪ loop‬بدال من ‪while‬‬
‫▪ تقوم بتكرار الكود لعدد معلوم من المرات (على حسب الشرط في ‪(statement 2‬‬
‫‪▪Syntax:‬‬ ‫يتم تنفيذها مرة واحدة ‪Statement 1‬‬
‫;‪for (statement 1; statement 2‬‬ ‫قبل تنفيذ باقي الكود‬
‫)‪statement 3‬‬
‫{‬ ‫تحدد الشرط لتنفيذ الكود ‪Statement 2‬‬
‫المكتوب‬
‫‪// code block to be executed‬‬
‫يتم تنفيذها كل مرة بعد ‪Statement 3‬‬
‫}‬ ‫تنفيذ الكود‬
‫مثال‬
‫▪ في هذا المثال‪:‬‬
‫هذا الكود سوف يطبع االرقام من ‪4 - 1‬‬
‫‪Statement 1‬‬
‫تعين متغيرا َ ‪ variable‬قبل بداية ‪loop‬‬
‫)‪(int i = 0‬‬
‫)‪for (int i = 0; i < 5; i++‬‬
‫‪Statement 2‬‬
‫تحدد الشرط لتنفيذ الكود المكتوب خالل ‪،loop‬‬
‫{‬
‫)‪ (i < 5‬في حالة كان الشرط صحيح ‪ true‬سوف تتكرر الحلقة‬ ‫;)‪System.out.println(i‬‬
‫اما في حالة كان الشرط نتيجته ‪ false‬سوف تنتهي الحلقة‬
‫}‬
‫‪Statement 3‬‬
‫تزيد قيمة ‪ (i++) i‬في كل مرة يتم تنفيذ الكود بداخل الحلقة ‪loop‬‬
‫مثال‬
‫▪ في هذا المثال‪:‬‬
‫هذا الكود سوف يطبع االعداد الزوجية بين ‪ 1‬و ‪10‬‬
‫‪Statement 1‬‬
‫تعين متغيرا َ ‪ variable‬قبل بداية ‪loop‬‬
‫)‪(int i = 0‬‬

‫‪Statement 2‬‬ ‫)‪for (int i = 0; i < 10; i +=2‬‬


‫تحدد الشرط لتنفيذ الكود المكتوب خالل ‪،loop‬‬ ‫{‬
‫)‪ (i < 10‬في حالة كان الشرط صحيح ‪ true‬سوف تتكرر الحلقة اما‬
‫في حالة كان الشرط نتيجته ‪ false‬سوف تنتهي الحلقة‬ ‫;)‪System.out.println(i‬‬
‫}‬
‫‪Statement 3‬‬
‫تزيد قيمة ‪ (i+2) i‬في كل مرة يتم تنفيذ الكود بداخل الحلقة ‪loop‬‬
‫حلقات ‪ for‬المتداخلة ‪Nested For Loops‬‬
‫▪يمكن أيضأ أن نضع حلقة داخل اخرى‪ .‬هذا يسمى بالحلقات المتداخلة ‪nested loop‬‬
‫سيتم تنفيذ "الحلقة الداخلية ‪ "inner loop‬مرة واحدة لكل تكرار لـ "الحلقة الخارجية ‪outer‬‬
‫‪:"loop‬‬
‫مثال‬
// Outer loop
for (int i = 1; i <= 2; i++) Output:
{
Outer: 1
System.out.println("Outer: " + i); Inner: 1
// Executes 2 times Inner: 2
// Inner loop Inner: 3
for (int j = 1; j <= 3; j++) { Outer: 2
System.out.println(" Inner: " + j); Inner: 1
// Executes 6 times (2 * 3) Inner: 2
} Inner: 3
}

‫ما نتيجة هذا الكود؟‬


Exercise
▪Use a for loop to print numbers from 1 to 6.

for (int i = 0; i <= 6; )


{
System.out.println( );
}
‫مالحظات‬
‫▪عندما نعلم عدد التكرارات التي ستنفذها الحلقة ‪ ،loop‬االفضل استخدام ‪for loop‬‬

‫▪اذا كنا ال نعلم عدد التكرارات تحديدا‪ ،‬وخصوصا اذا كان التكرار يعتمد على قيمة يقوم المستخدم بادخالها‪ ،‬في هذه الحالة‬
‫يفضل استخدام ‪ while‬او ‪do-while‬‬

‫▪اذا كنا نحتاج لمعرفة رقم التكرار او استخدام قيمته في البرنامج يمكن استخدام ‪ for loop‬لالستفادة من العداد بها حيث أن‬
‫قيمته تبين رقم التكرار‬

‫▪اذا كان من الممكن أال يتم تنفيذ الحلقة أصال‪ ،‬فاالصح استخدام ‪ ،while‬أما إن كان تنفيذ الحلقة يكتمل للمرة االولى في كل‬
‫االحوال حينها يمكن استعمال ‪ while‬او ‪do-while‬‬

You might also like