PDA

View Full Version : سوال: نحوه کار با ماتریس های دو بعدی



domidimod
جمعه 18 مرداد 1387, 19:25 عصر
سلام دوستان
چگونه می توان یک ماتریس 5*5 رو توسط کاربر پر کرد و بعد آن را نمایش داد؟
درواقع مشکل اصلی من نحوه نمایش ماتریس دو بعدی است ؛ که نمی دانم با چه کنترلی امکان پذیر است.
با تشکر

mostafaaa
جمعه 18 مرداد 1387, 21:50 عصر
من منظورتون رو کاملا متوجه نشدم ،ولی فکر میکنم میتونید از یه DataGridView استفاده کنید بدین شکل که یه گرید ویو با 5 سطر و 5 ستون درست میکنید و وقتی کاربر اطلاعاتش رو توی سلولها وارد کرد شما با استفاده از دو تا حلقه تو در تو محتویات گرید ویو رو میخونید و توی ماتریس میریزید .برعکسش هم برای نمایش دادن میتونید استفاده کنید.
اگه متوجه نشدی بگو تا کدش رو بزارم.

domidimod
جمعه 18 مرداد 1387, 22:58 عصر
Public

Class Form1

Dim i, j, a(5, 5) AsInteger
PrivateSub btngotoarray_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btngotoarray.Click
For i = 0 To 4
For j = 0 To 4
a(i, j) = DG1.Item(i, j).Value
Next
Next
EndSub
PrivateSub btngotodatagrid_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btngotodatagrid.Click
For i = 0 To 4
For j = 0 To 4
(Dg2.Item(i, j).Value = a(i, j
Next
Next
EndSub
EndClass


سلام دوست عزیز
از توجه و راهنماییتان متشکرم
من کار با کنترل DataGridView را خیلی بلد نیستم درواقع با خصوصیات این کنترل چندان آشنایی ندارم. با این حال سعی کردم از بعضی خصوصیاتش استفاده کرده و توانستم کدهای فوق را بنویسم اما جواب مورد نظرم را نگرفتم!
من می خواهم ابتدا ماتریس توسط اعداد ورودی کاربر پر شود و پس از ویرایشهایی به ماتریس نهایی برسم و بتوانم آن را نمایش دهم. هدفم نوشتن برنامه الگوریتم وارشال است!
لطفا بیشتر راهنماییم کنید. متشکرم.

mostafaaa
شنبه 19 مرداد 1387, 10:39 صبح
یه خورده اشکال داره ولی کار میکنه .

Public Class Form1
Dim Matris(5, 5) As String

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
For i As Integer = 0 To 5
For j As Integer = 0 To 5
Matris(i, j) = DataGridView1.Rows(i).Cells(j).Value
Next
Next
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
DataGridView2.Rows.Clear()
For i As Integer = 0 To 5
DataGridView2.Rows.Add()
For j As Integer = 0 To 5
DataGridView2.Rows(i).Cells(j).Value = Matris(i, j)
Next
Next
End Sub
End Class

domidimod
شنبه 19 مرداد 1387, 12:29 عصر
سلام آقا مصطفی
بی نهایت از کمکتون سپاسگذارم
برنامم درسته درست شد!
ممنون از لطفتون.:لبخندساده: