منتديات نبع الفرات

تمت ارشفة منتديات نبع الفرات

المشاركات من الموضوع الجمل الشرطية If , else , else if بالدوت نت ( حصرياً )

  1. بواسطة spyman

    السلام عليكم :

    الكثير من المبتدئين ما يميزون بين الجمل البرمجية If , else , else if بينما الفرق واضح ومنطقي , لذلك شرح حتي

    يستفادون منا المبتدئين , المثال يشمل الجمل الثلاثة وهذه صورة توضيحية :


    [صورة]


    اول شيء خلي نعرف التشابه بين هذه الجمل وانوب نتطرق للاختلاف



    الجمل ثلاثة هي جمل لتحقيق شرط معين , لكن else اختصار لعدد جمل if , اما else if فهي لعدة شروط,, على سبيل المثال هذا الشرط




    اذا كانت درجة الطالب اقل من 50 اكتب في مربع النص " راسب "


    خلي نحولها لكود :



    If TextBox1.Text < 50 Then


    TextBox2.Text = " راسب"


    end if




    اذا اردنا اضافة شرط ثاني وهو شرط النجاح لازم نكتب الكود التالي :




    If TextBox1.Text >= 50 Then


    TextBox2.Text = " "


    MessageBox.Show(" مقبول ")


    End If




    وكلما اردنا اضافة شرط جديد نكتب if جديدة وهكذا ,, لذلك تم اللجوء الى جملة else



    جملة else تعني "" اما اذا لم يتحقق الشرط فيجب طباعة عبارة يحدده المبرمج



    مثال :



    رح نغير الكود الفوك الى else بدل من كتابة جملة if مرتين :: تتم العملية كالتالي : باستخدام else



    If TextBox1.Text < 50 Then


    TextBox2.Text = " راســــب"


    Else


    TextBox2.Text = " ناجـــــــــــــــح"


    End If



    --------------------------------------------------------




    هسه وصلنا لجملة else if وهي الجملة الاكثر شمولية من if و else السابقات الذكر



    مثل ما ذكرنا في بداية الموضوع ان هذه الجملة هي لعدة شروط :



    مثال : اذا اردنا ان نسوي شرط وهذا الشرط يحتوي على عدة نتائج وهي : راسب , مقبول , متوسط , جيد , جيد جداً , ممتاز



    من غير المنطقي ان نضل انصفت جمل if ونرجع ^_^



    لذلك انوجدت هذه الدالة ( else if )



    ويكون الكود كالتالي :

    '
    On Error Resume Next
    If TextBox1.Text = "" Then
    End
    End If
    '+++++++++++++++++++++++++++++++++++++++
    ' else if
    If TextBox1.Text < 50 Then
    TextBox2.Text = " راسب"
    ElseIf TextBox1.Text < 50 Then
    TextBox2.Text = "مقبول"
    ElseIf TextBox1.Text < 60 Then
    TextBox2.Text = "متوسط"
    ElseIf TextBox1.Text < 70 Then
    TextBox2.Text = " جيد"
    ElseIf TextBox1.Text < 75 Then
    TextBox2.Text = " جيد جدا"
    ElseIf TextBox1.Text < 80 Then
    TextBox2.Text = "ممتاز "
    Else
    TextBox2.Text = "مو طبيعي ^_^ "
    End If


    وهذا كود المشروع كاملاً :





    Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    '
    On Error Resume Next
    If TextBox1.Text = "" Then
    End
    End If
    '++++++++++++++++++++++++++++++++++++++++++++++++++
    ' if
    If TextBox1.Text < 50 Then
    TextBox2.Text = " "
    End If
    If TextBox1.Text >= 50 Then
    TextBox2.Text = " "
    MessageBox.Show(" ", " ", MessageBoxButtons.OK, MessageBoxIcon.Question)
    End If
    End Sub
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    '
    On Error Resume Next
    If TextBox1.Text = "" Then
    End
    End If
    '+++++++++++++++++++++++++++++++++++++
    ' else
    If TextBox1.Text < 50 Then
    TextBox2.Text = " "
    Else
    TextBox2.Text = ""
    End If

    End Sub
    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
    '
    On Error Resume Next
    If TextBox1.Text = "" Then
    End
    End If
    '+++++++++++++++++++++++++++++++++++++++
    ' else if
    If TextBox1.Text < 50 Then
    TextBox2.Text = " "
    ElseIf TextBox1.Text < 50 Then
    TextBox2.Text = ""
    ElseIf TextBox1.Text < 60 Then
    TextBox2.Text = ""
    ElseIf TextBox1.Text < 70 Then
    TextBox2.Text = " "
    ElseIf TextBox1.Text < 75 Then
    TextBox2.Text = " "
    ElseIf TextBox1.Text < 80 Then
    TextBox2.Text = " "
    Else
    TextBox2.Text = " "
    End If

    End Sub
    End Class





    اي استفسار انا حاضر وممنون :)
  2. بواسطة Hazim M

    جزيل الشكر على المعلومات المفيده
    كل الود و التقدير
  3. بواسطة ابن الفرقدين

    موضوع جميل جداااااااااا
    تسلم اليد التي خطت لنا هذا الموضوع