Professional Documents
Culture Documents
Untitled
Untitled
األسبوع الثالث
IF Statements الجمل الشرطية
IF statements
If….. end if
If.. Else… End if
Nested if ( )جملة ا لشرط ا لمتداخله
أوال :جملة الشرط if… end if
في هذا النوع من جمل الشرط ..ال يتحقق الشرط اال اذا كان
صحيحا ..وغير ذلك فال يعطي نتائج
• الصيغة العامة لهذا النوع من جمل الشرط
If Condition(s) then
Action
End If
مثال ( :)1قم بادخال ُعمر الشخص في صندوق النص ،فاذا كان
ُعمر الشخص عند الضغط على زر حساب اكبر من 30عام
يخرج رسالة في صندوق نص آخر تحتوي على النص التالي
“. ”the person is old
الشيفره:
)(Private Sub Command1_Click
Dim AGE As Integer
AGE = Text1.Text
If AGE > 30 Then
“ Text2.Text = "PERSON IS OLD
End If
End Sub
ولكن نريد ان نضيف علية شرط جديد بحيث، نفس المثال السابق
ولكن30 ” اذا كان عمره اقل منperson is young“ يطبع رسالة
.Else دون استخدام
:الشيفرة
Private Sub Command1_Click()
Dim AGE As Integer
AGE = Text1.Text
If AGE > 30 Then
Text2.Text = "PERSON IS OLD “
End If
If AGE< 30 then
Text2.Text = "PERSON IS YOUNG “
End If
End Sub
ثانيا :جملة الشرط If…Else…End If
• هذا النوع من الجمل الشرطية يتميز عما قبله انه في حال
تحقق الشرط يعطي نتيجة وفي حال لم يتحقق الشرط يعطي
نتيجة اخرى.
الصيغة العامة:
If Condition (s) Then
action1
Else
action2
End If
If…Else…End If جملة الشرط:ثانيا
قد اختصرElse سنالحظ كيف ان وجود..•نفس المثال السابق
.لنا من حجم الكود
Private Sub Command1_Click()
Dim AGE As Integer
AGE = Text1.Text
If AGE > 30 Then
Text2.Text = "PERSON IS OLD “
Else
Text2.Text = "PERSON IS YOUNG “
End If
End Sub
تمرين رقم ()1
قم بادخال عالمات 5مواد ( رياضيات ،عربي ،انجليزي ،فيزياء ،نظم
اداري ة) فبشك ل يدوي عل ى ص ناديق ن ص ،وم ن ث م ق م باحتس اب
المتوس ط الحس ابي واظهاره ف ي ص ندوق ن ص منفص ل ،ث م ق م
باظهاركلمة ناجح في صندوق نص آخر إذا كان المتوسط الحسابي
اكبر او يساوي 75وراسب اذا كان اقل من ذلك .وال تنسى عمل زر
"مسح" لمسح ما هو داخل صناديق النص عند االنتهاء.
If..ElseIf.. End if الجملة الشرطية:ثالثا
If Condition (s) Then تشبة بالمعنى هذه الصيغه ولكن الصيغه
action1 المقابله اسرع واقل في حجز الذاكرة
Elseif
If Condition 1 Then
Condition (s) Then Statement 1
action2 End if
Elseif
If Condition 2 Then
condition(s) Then Statement 2
action 3 End if
.
. If Condition 3 Then
. Statement 3
Else End if
Default action
End If If Condition 4 Then
Statement 4
End if
ثالثا :الجملة الشرطية If..ElseIf.. End if
• مثال ( :)3ق م بعم ل برنام ج يقوم بفح ص درج ة الحراره ،بحي ث يت م
اضاف ة درج ة الحرارة ف ي ص ندوق ن ص وم ن ث م يقوم ال برنامج
بفحصا كما يلي :اذا كانت درجة الحرارة اقل او يساوي 32يطبع (it
، )is freezingوذا كانت درجة الحرارة اكبر او يساوي 60يطبع
( ، )very hotواذا كان ت درج ة الحرارة غي ر ذل ك يطب ع
( . )Normalثم قم بعمل زر مسح لمسح جميع القيم المدخله.
الحل
:)الشيفرة (الكود
Private Sub Command1_Click()
If Text1.Text <= 32 Then
Text2.Text = "It's freezing!"
ElseIf Text1.Text >= 60 Then
Text2.Text = "very hot"
Else
Text2.Text = "Normal"
End If Private Sub
Command2_Click()
End Sub Text1.Text = ""
Text2.Text = ""
End Sub
تمرين رقم ()2
مثال ( :)4ق م بتص ميم برنام ج بحي ث يت م ادخال عالمات الطال ب
وفحص ها ،فإذا كان ت عالم ة الطال ب أق ل م ن 50اطب ع ( )Failداخ ل
العنوان ، labelواذا كانت عالمة الطالب اكبر او تساوي 50واقل
من 60اطبع ( )not badداخل العنوان ، labelواذا كانت عالمة
الطال ب اك بر او تس اوي 60واق ل م ن 70اطب ع ( )goodداخ ل
العنوان ، labelواذا كانت عالمة الطالب اكبر او تساوي 70واقل
م ن 80اطب ع ( )v.goodداخ ل العنوان ، labelواذا كان ت عالم ة
الطال ب اك بر او تس اوي 80واق ل او تس اوي 100اطب ع
( )Excellentداخ ل العنوان ، labelوغي ر ذل ك يطبع (Out of
.)rangeوعمل زر خروج للخروج من البرنامج
)1( حل التمرين رقم
Private Sub Command1_Click()
Text6.Text = (Val(Text1.Text) + Val(Text2.Text) +
Val(Text3.Text) + Val(Text4.Text) + Val(Text5.Text)) /
5
If Text6.Text >= 75 Then Private Sub
Text7.Text = "pass" Command2_Click()
Text1.Text = ""
Else
Text2.Text = ""
Text7.Text = "failed" Text3.Text = ""
End If Text4.Text = ""
End Sub Text5.Text = ""
Text6.Text = ""
Text7.Text = ""
)2( حل التمرين رقم
Private Sub Label3.Caption = "v.Good"
Command1_Click() ElseIf x >= 80 And x <= 100
Dim x As Long Then
x = Val(Text1.Text) Label3.Caption =
"Excellent"
If x < 50 Then
Else
Label3.Caption = "fail"
Label3.Caption = "wrong!!
ElseIf x >= 50 And x < 60 Out of range"
Then
End If
Label3.Caption = "Not bad" End Sub
ElseIf x >= 60 And x < 70
Then Private Sub
Label3.Caption = "Good" Command2_Click()
ElseIf x >= 70 And x < 80 End