10-12-20, 04:37 PM
و عليكم السلام و رحمة الله و بركاته
اسئلة جميلة و ممتعة اخي اسامة,
لان الوقت ضيق و اعذرني على ذلك
ساجيب على السؤال الخامس الذي طرحته بما امكن.
نقسم السؤال الى عدة اسئلة و نحل كل منها على حدا.
1-اكتب برنامج بلغة فيجوال بيسك لتعريف مصفوفة عددية أحادية مكونة من 10 اعداد
2-اطبعها في datagrid
يتوجب علينا اضافة عمود في القريد و من ثم اضافة عناصر المصفوفة اليها
3-طباعة ثاني اكبر عدد فيها في LABEL
نرتب المصفوفة من الاصغر الى الاعلى و نحصل على القيمة في الموقع المحدد.
4-طباعة الاعداد الزائدة في listbox حيث ان العدد الزائد هو ذلك العدد الذي مجموع عوامله اكبر من ضعف العدد مثال
العدد 12 عوامله هي 1,2,3,4,6,12 مجموعها 28 اكبر من ضعف العدد فهو عدد زائد
على ذلك نستنتج ان المطلوب يمكن تقسيمه كما يلي:
نفحص كل عناصر المصفوفة رقماً رقم عن طريق دالة تقوم بتحليل الرقم الى عوامله الاولية حيث
ان ناتج تقسيم الرقم على العدد المعطى لا ينتج عنه باقي قسمة.
ثم نعود و نجمع العوامل الاولية الناتجة و نقارنها بضعف العدد , فاذا كان مجموعها اكبر من ضعف العدد نضيفها الى مصفوفة الارقام الزائدة.
اولاً المصفوفة التي سنملئها بالارقام الزائدة
ثانيا دالة نحصل بها على ضعف الرقم
ثالثا دالة تقوم بما تم شرحه في الاعلى
تمر على عناصر المصفوفة و تحلل العدد الى عوامله الاولية و من ثم المقارنة و اذا تحقق الشرط نضيفه الى مصفوفة الاعداد الزائدة
رابعا الاستدعاء
بالتوفيق اخي
اسئلة جميلة و ممتعة اخي اسامة,
لان الوقت ضيق و اعذرني على ذلك
ساجيب على السؤال الخامس الذي طرحته بما امكن.
نقسم السؤال الى عدة اسئلة و نحل كل منها على حدا.
1-اكتب برنامج بلغة فيجوال بيسك لتعريف مصفوفة عددية أحادية مكونة من 10 اعداد
PHP كود :
Dim Arr1 As Integer() = New Integer() {10, 11, 12, 36, 21, 15, 25, 32, 35, 48}
يتوجب علينا اضافة عمود في القريد و من ثم اضافة عناصر المصفوفة اليها
PHP كود :
Private Sub Form2_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim newCol As DataGridViewColumn = New DataGridViewColumn()
Dim cell As DataGridViewCell = New DataGridViewTextBoxCell
newCol.CellTemplate = cell
newCol.HeaderText = "ID"
newCol.Name = "ID"
newCol.Visible = True
newCol.Width = 60
DataGridView1.Columns.Add(newCol)
For Each itm In Arr1
DataGridView1.Rows.Add(itm.ToString)
Next
End Sub
نرتب المصفوفة من الاصغر الى الاعلى و نحصل على القيمة في الموقع المحدد.
PHP كود :
Array.Sort(Arr1)
Label1.Text = Arr1.GetValue(Arr1.Length - 2)
العدد 12 عوامله هي 1,2,3,4,6,12 مجموعها 28 اكبر من ضعف العدد فهو عدد زائد
على ذلك نستنتج ان المطلوب يمكن تقسيمه كما يلي:
نفحص كل عناصر المصفوفة رقماً رقم عن طريق دالة تقوم بتحليل الرقم الى عوامله الاولية حيث
ان ناتج تقسيم الرقم على العدد المعطى لا ينتج عنه باقي قسمة.
ثم نعود و نجمع العوامل الاولية الناتجة و نقارنها بضعف العدد , فاذا كان مجموعها اكبر من ضعف العدد نضيفها الى مصفوفة الارقام الزائدة.
اولاً المصفوفة التي سنملئها بالارقام الزائدة
PHP كود :
Dim ListOfNumbers As New List(Of Integer)
PHP كود :
Private Function GetMultiPlayNumber(i As Integer) As Integer
Return i * 2
End Function
تمر على عناصر المصفوفة و تحلل العدد الى عوامله الاولية و من ثم المقارنة و اذا تحقق الشرط نضيفه الى مصفوفة الاعداد الزائدة
PHP كود :
Private Sub ListfDivision(p As Integer)
Dim listP As New List(Of Integer)
For m As Integer = 1 To p
Dim A As Integer = p Mod m
If A = 0 Then
listP.Add(m)
End If
Next
Dim k As Integer = 0
If listP.Count > 0 Then
For Each F As Integer In listP
k += F
Next
If k > GetMultiPlayNumber(p) Then
ListOfNumbers.Add(p)
End If
End If
End Sub
PHP كود :
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
ListOfNumbers.Clear()
For Each itm As Integer In Arr1
ListfDivision(itm)
Next
If ListOfNumbers.Count > 0 Then
ListBox1.DataSource = ListOfNumbers.ToList
End If
End Sub
بالتوفيق اخي
اللهم لك الحمد كما ينبغي لجلال وجهك و عظيم سلطانك
في حل و ترحال


