מטריצה - מערך דו־ממדי
מטריצה היא מבנה נתונים דו־ממדי המיוצג כטבלה של ערכים, המורכבת משורות ועמודות. כל ערך מזוהה באמצעות שני אינדקסים: אינדקס השורה ואינדקס העמודה.
יצירת מטריצה
יוצרים מטריצה באמצעות מערך דו־ממדי. לדוגמה, מטריצה בגודל 3 × 3:
int[,] mat = new int[3, 3];אתחול מטריצה
אפשר לאתחל את הערכים בזמן יצירת המטריצה:
int[,] mat =
{
{ 1, 2, 3 },
{ 4, 5, 6 },
{ 7, 8, 9 }
};גישה לערכי מטריצה
כדי לגשת לערך מסוים משתמשים באינדקס השורה ובאינדקס העמודה. האינדקסים מתחילים ב-0.
גישה לערך בשורה 1 ובעמודה 2 - הערך יהיה 6:
int value = mat[1, 2];שינוי הערך בשורה 2 ובעמודה 0 לערך 10:
mat[2, 0] = 10;גודל המטריצה
מספר השורות:
mat.GetLength(0);מספר העמודות:
mat.GetLength(1);סריקת מטריצה
נשתמש בלולאות מקוננות: הלולאה החיצונית עוברת על השורות, והפנימית על העמודות. אחרי הדפסת כל שורה עוברים לשורה חדשה.
for (int i = 0; i < mat.GetLength(0); i++)
{
for (int j = 0; j < mat.GetLength(1); j++)
{
Console.Write(mat[i, j] + " ");
}
Console.WriteLine();
}