المشاركات

أساسيات البرمجة سي شارب - C# - Strings السلاسل النصية

صورة
C# - Strings السلاسل النصية الصورة من موقع https://www.codevscolor.com/c-sharp-compare-two-strings أساسيات البرمجة سي شارب - C# - Strings السلاسل النصية السلاسل النصية رغم عند اسناد القيمة لمتغير نصي فانه يبدو كانك قم بتعريف  متغير ذات القيمة  مثل المتغيرات العادية ولكن الحقيقة هي ان السلاسل النصية هي  بيانات ذات المرجع  ويمكنك تعريف سلسلة نصية في مصفوفة. السلاسل النصية مشتقة من الفئة system.string. إنشاء كائن سلسلة نصية :- عن طريق اسناد حرف نصي الى متغير نصي. باستخدام مشيد الفئة system.string lay. مشغل السلسلة النصية (+). الخصائص والدوال التي تعيد سلاسل نصية. عن طريق استخدام دالة التحويل البيانات الى نصي. مثال على السلاسل النصية :- using System; namespace StringApplication { class Program { static void Main(string[] args) { //جمع نصين string fname, lname; fname = "Rowan"; lname = "Atkinson"; string fullname = fname + lname; Console.WriteLine("Full Name: {0}", fullname); //من خلال المشيد char[] letters = { 'H', 'e', 'l',...

أساسيات البرمجة سي شارب - الفئة الاساسية لكل المصفوفات C# - Array Class

صورة
The Array Class الفئة الاساسية  لكل المصفوفات سي شارب الفئة الاساسية للمصفوفات:- توجد للفئة الاساسية للمصفوفات عدة خواص ودوال يمكن الاستفادة منها عند التعامل مع المصفوفات.سنرد بعض اهم خصائص المصفوفات. المسلسل اسم الخاصية واستخدامها 1 IsFixedSize تعيد قيمة تحدد عل المصفوفة ثابتة الحجم ام لا. 2 IsReadOnly تعيد هل المصفوفة للقراءة فقط. 3 Length تعيد طول المصفوفة لكل الابعاد بقيمة عدد صحيح 32 بت . 4 LongLength تعيد طول المصفوفة لكل الابعاد بقيمة عدد صحيح 64 بت . 5 Rank تعيد عدد الابعاد للمصفوفة. أهم الدوال الشائع استخدامها مع المصفوفات. المسلسل الدالة واستخدامها 1 Clear تقوم بعملية تصفير مدى المصفوفة الى صفر او قيمة فارغة حسب نوع البيانات . 2 (Copy(Array, Array, Int32 تقوم بنسخ المدى المصفوفة بدا من حيث يبدا الفهرس الى مصفوفة ثانية مع تحديد نوع البيانات 3 (CopyTo(Array, Int32 تقوم بنسخ جميع عناصر المصفوفة الى المصفوفة المحددة ويبدا الفهرس حسب المصفوفة المنسوخ منها ويستخدم للفهرسة بيانات عدد صحيح. 4 GetLength  نقوم بارجاع عدد العناصر ...

أساسيات البرمجة سي شارب - تمرير مصفوفة قيم غير معروفة الى الدالة C# - Param Arrays

صورة
Param arrays  تمرير قيم غير معروفة الى الدالة تمرير قيم غير معروفة العدد لدالة باستخدام المصفوفة الدينامكية. ربما صادفك انك تريد انشاء دالة تقوم  بعملية حسابية ما لعدد  غير معروفة من المتغيرات  فتارة تريد  جمع 3 أعدلد او اربعة الي اخره فليس من المعقول انشاء دوال متعددة ذات  قيم باراميترات متغيرة  العدد فالحل هو تمرير مصفوفة ديناميكية غير  محدد العناصر يتم تحديد عناصرها عند تهئيتها. مثال على   تمرير المصفوفة كباراميتر:- using System; namespace ArrayApplication {      class ParamArray      {          public int AddElements(params int[] arr)           {                 int sum = 0;                     foreach (int i in arr)                      {             ...

أساسيات البرمجة سي شارب - تمرير المصفوفة للدوال C# - Passing Arrays as Function Arguments

 تمرير المصفوفة للدوال  Passing arrays to functions   تمرير المصفوفة للدوال كما شرحنا في درس الدوال بأنه يوجد عدة طرق لتمرير القيم من خلال الدالة وهي بما تعرف بالبراميترات أو الوسطاء و يوجد نوع من البيانات يمكن تمريره خلال الوسطاء يسمى بالمصفوفة وهي تحتوي على مجموعة من القيم لها نفس النوع من البيانات وحجم ثابت.في المثال التالي نمرر مصفوفة من خلال الدالة . المثال على   تمرير المصفوفة للدوال  :- using System; namespace ArrayApplication {      class MyArray       {          double getAverage(int[] arr, int size)           {                 int i;                 double avg;                 int sum = 0;              for (i = 0; i < size; ++i)             {...

أساسيات البرمجة سي شارب - المصفوفات متعددة الابعاد مصفوفة المصفوفة C# - Jagged Arrays

  المصفوفات  متعددة الابعاد مصفوفة المصفوفة Jagged arrays مصفوفة المصفوقة:- مصفوفة المصفوفة هي عبارة عن مصفوفة عادية ولكن عناصرها تكون مصفوفات وليس بيانات عادية. يمكن تصريح مصفوفة المصفوفة لاي نوع بيانات المعروفة مثل الاعداد الصحيحة . int [][] scores; كما ذكرنا في درس المصفوفات السابق التصريح عن المصفوفة لا يعني اننا هيئنا المصفوفة اي انشأنها في الذاكرة ولذلك لتهئية المصفوفة نكتب الكود التالي. int[][] scores = new int[5][]; for (int i = 0; i < scores.Length; x++)  {  scores[i] = new int[4];  } وايضا يمكنك من تهئية المصفوفة كالتالي: int[][] scores = new int[2][]{new int[]{92,93,94},new int[]{85,66,87,88}}; حيث ان المصفوفة score هي مصفوفة لمصفوفتين الاول score 0 هي مصفوفة لثلاث عناصر من نوع اعداد الصحيحة. والمصفوفة الثانية هي score 1 هي مصفوفة من اربع عناصر من نوع اعداد صحيحة. مثال على مصفوفة المصفوفات using System; namespace ArrayApplication {    class MyArray     {        static void Main(string[] args...

أساسيات البرمجة سي شارب - المصفوفات ثنائية البعد C# - Multidimensional Arrays

صورة
Multi-dimensional arrays  المصفوفات ثنائية البعد المصفوفات ثنائية البعد :- تسمح لغة السي شارب بانشاء مصفوفة تنائية البعد او بما تعرف بمصفوفة المستطيل. فيمكنك التصريح عن مصفوفة   نصية ثنائية البعد. string [,] names; أو حتى مصفوفات  ثلاثية الابعاد كما في المثال التالي من نوع عدد صحيح . int [ , , ] m; المصفوفة ثنائية البعد :- المصفوفة ثنائية البعد هي الي حد ما تشبه الجدول بحيث ان كل خلية لها فهرس يحدد موضعها برقم العمود ورقم الصف شاهد الصورة التالية. في المثال التالي انشاءنا مصفوفة ثنائية البعد تتكون من 3 صفوفة واربعة أعمدة كما شرحنا في الدرس السابق يبدأ الفهرسة من الصفر في لغة سي شارب. int [,] a = int [3,4] = { {0, 1, 2, 3} , /*  0تهئية الصف الاول الفهرس  */ {4, 5, 6, 7} , /* تهئية الصف الثاني الفهرس 1 */ {8, 9, 10, 11} /*تهئية الصف الثالث الفهرس 2 */ }; الوصول لعناصر المصفوفة:- يتم الوصول للمصفوفة عن طريق تحديد رقم فهرس الصف ورقم فهرس العمود كالمثال التالي. int val = a[2,3]; في المثال...

أساسيات البرمجة - سي شارب القيمة الفارغة C# - Nullables

صورة
C# - Nullables القيمة الفارغة ماهي القيم الفارغة؟ نوع البيانات ذات القيمة الفارغة هو نوع خاص من البيانات قد يحتوي اي نوع من البيانات المعروفة أو قيمة فارغة .الصفر والمسافي هي قيم غير فارغة فهى تحجز مكان في الذاكرة بغكس القيم الفارغة. الصيغة العامة للقيم الفارغة:- < نوع البيانات > ? <اسم المتغير> = null; using System; namespace CalculatorApplication    {       class NullablesAtShow       {          static void Main(string[] args)           {             int? num1 = null;             int? num2 = 45;            double? num3 = new double?();            double? num4 = 3.14157;            bool? boolval = new bool?();            // عرض القيم   ...