Amjadi - Ebook 4 - Array - v1

5
بنام ایزد جان و خردسی برنامه نویc# ویسنده نترجم ، من امجدید امیّحمآورنده : م و گرد بخش چهارم ها آرایه: Array [email protected]

Transcript of Amjadi - Ebook 4 - Array - v1

جان و خرد ایزدبنام

#cبرنامه نویسی و گردآورنده : محمّد امین امجدی، مترجم نویسنده

چهارمبخش Array : آرایه ها

[email protected]

C# 1برنامه نویسی چهارمبخش

تعریف نموده 011ها و به طول intنیاز داشته باشیم ، یک آرایه از intتا 011اگر به مثالاز عناصر هستند که ای آرایه ها مجموعه

نمودن یک آرایه تمام عناصر آن newکنیم و بعد از آن استفاده نمائیم و با new، توجه داشته باشید که حتما یک آرایه را باید

کنیم عناصر آن مقدار newمقدار پیش فرض نوع داده های آنرا می گیرد که مثال اگر آرایه ای از بولین تعریف کنیم و سپس آنرا

false گیرند و اگر آرایه از نوع میint باشد و آنراnew . کنیم عناصر آن مقدار صفر می گیرند

کنیم ) برای newها را intکردن نیز باید یک آرایه از نوع newتعریف می کنیم موقع intتوجه : وقتی آرایه ای از مثال از نوع

رار داد قآرایه ایجاد شده را از نوع دیگری ری و چندریختی می توان درس پیشرفته( )در درس شی گرا و با آشنایی با مفاهیم ارث ب

( ولی باز نمی توان از هر نوعی باشد

: آرایه های یک بعدی

using System; namespace Test_1 { class Program { static void Main() { int[] a = new int[5]; //Read for (int i = 0; i < a.Length; i++ ) { Console.Write("A[{0}] : " , i); a[i] = Convert.ToInt32(Console.ReadLine()); } //Write for (int i = 0; i < a.Length; i++) { Console.WriteLine("A[{0}] : {1}", i, a[i]); } Console.ReadKey(); } } }

a : a.Lengthطول آرایه

است و پرانتز باز و بسته ندارد . Propertyیک Lengthتوجه داشته باشید که

های آرایه از صفر هستند تا چهار می باشد .، اندیس 5توجه داشته باشید که برای آرایه ای به طول

C# 2برنامه نویسی چهارمبخش

: آرایه ای از آرایه ها

داریم . یک آرایه از آرایه هاخیلی خیلی راحت با این آرایه ها برخورد کنید ، ساختار این آرایه ها این است که using System; namespace Test_1 { class Program { static void Main() { int[][] a = new int[5][]; //Read for (int i = 0; i < a.Length;i++ ) { //****** a[i] is a int[] ********** // you can Read a[i] , write a[i] , sort [i] or .... //a[i] must use new opt for a[i] a[i] = new int[i + 1]; for(int j = 0 ; j < a[i].Length ; j++) { //a[i][j] is a int Console.Write("a[{0}][{1}] : ",i,j); a[i][j] = Convert.ToInt32(Console.ReadLine()); } } //Write for (int i = 0; i < a.Length; i++) { // a[i] is a int[] for (int j = 0; j < a[i].Length; j++) { Console.WriteLine("a[{0}][{1}] : {2}", i, j,a[i][j]); } } Console.ReadKey(); } } }

چند تا aمشخص کننده این است که این a.Lengthیک آرایه از آرایه هاست ؛ aدر مثال فوق توجه داشته باشید که

ها بوده )که می توان براحتی آنرا مرتب Intود یک آرایه از خ a[i]تا دارد( و 5ها دارد() intآرایه دارد )چند تا آرایه از

)سوال میان ترم( و یا هر عملیات دیگری که برای آرایه ها نوشته بودیم(نمود mergeکرد ، یا با یک آرایه دیگر

تا( ، حال باید توجه داشت 5ها داریم را مشخص می کنیم ) Intمی کنیم تعداد آرایه هایی که newرا aوقتی که آرایه

شود . newها بوده و خود باید حتما intیک آرایه از a[i]که

درست اند :خوب نگاه کنید ، همگی int[] a1; int[][] a2; int[][][] a3; int[][][][] a4;

Amjadi
Highlight
Amjadi
Highlight
Amjadi
Highlight
Amjadi
Highlight

C# 3برنامه نویسی چهارمبخش

بعدی : ماتریس ها : دوآرایه های

using System; namespace Test_1 { class Program { static void Main() { int[,] a = new int[2, 3]; //Read for (int i = 0; i < a.GetLength(0); i ++ ) { for(int j = 0 ; j < a.GetLength(1) ; j++) { Console.Write("a[{0},{1}] : ",i,j); a[i, j] = Convert.ToInt32(Console.ReadLine()); } } //Write for (int i = 0; i < a.GetLength(0); i++) { for (int j = 0; j < a.GetLength(1); j++) { Console.WriteLine("a[{0},{1}] : {2}", i, j,a[i,j]); } } تعداد سطرها// Console.WriteLine(a.GetLength(0)); تعداد ستون ها// Console.WriteLine(a.GetLength(1)); تعداد سطرها * تعداد ستون ها = تعداد کل عناصر ماتریس// Console.WriteLine(a.Length); Console.ReadKey(); } } }

: در اینجا سه بعدی را نمایش می دهیم : آرایه ها چند بعدی : همانند آرایه های دو بعدی می باشند

using System; namespace Test_1 { class Program { static void Main() { int[, ,] a = new int[2, 3, 4]; //Read for (int i = 0; i < a.GetLength(0); i ++ ) { for(int j = 0 ; j < a.GetLength(1) ; j++) { for (int k = 0; k < a.GetLongLength(2); k++) { Console.Write("a[{0},{1},{2}] : ", i, j, k); a[i, j, k] = Convert.ToInt32(Console.ReadLine()); } } } //Write for (int i = 0; i < a.GetLength(0); i++) {

Amjadi
Highlight

C# 4برنامه نویسی چهارمبخش

for (int j = 0; j < a.GetLength(1); j++) { for (int k = 0; k < a.GetLongLength(2); k++) { Console.WriteLine("a[{0},{1},{2}] : {3}", i, j, k, a[i, j, k]); } } } تعداد عناصر بعد صفر// Console.WriteLine(a.GetLength(0)); تعداد عناصر بعد یک// Console.WriteLine(a.GetLength(1)); تعداد عناصر بعد دو // Console.WriteLine(a.GetLength(2)); عناصر بعد صفر * تعداد عناصر بعد یک * تعداد عناصر بعد دوتعداد = تعدا کل عناصر آرایه// Console.WriteLine(a.Length); Console.ReadKey(); } } }

موارد زیر درست اند : int[] a1; int[,] a2; int[, ,] a3; int[, , ,] a4;

int[, , , ,] a5;