هل ستتابع الدورة وسنتساعد على فهم البرمجة في السي شارب

  • نعم

    الأصوات: 27 96.4%
  • لا

    الأصوات: 1 3.6%

  • مجموع المصوتين
    28
ماهو المتغير char
هو متغير يستطيع تخزين رمز واحد فقط , الرمز يكتب بداخل ' '
أقصد ب رمز واحد مثلا حرف واحد ... رقم واحد ..+..........
مثال على استخدام char
38780581654_e323f89090_b.jpg

151436886067221.jpg


وظيفة اليوم
1-فسر ما سبق من تعليمات في الصورة
2- أكتب برنامج يقوم بتخير المستخدم بين جمع الرقمين أو طرحهما مع إظهار النتيجة
 

التعديل الأخير:
أعذروني سأغيب يومين ثم أعود إن شاء الله (( بسبب الجرد السنوي ))
سيكون درسنا التالي عن المصفوفات إن شاء الله
تمنياتي لكم بالتوفيق
 
:::المصفوفات:::
ببساطة نعرف
المصفوفة هي مجموعة من البيانات التي حيث يجب أن تكون من ذات النوع ( نصي .. رقمي .. ) يستوجب علينا تحديد سعتها خلال برمجتها

كل عنصر من المصفوفة يعتبر متغير يستقبل قيمة
-----------------------

سنتعلم اليوم المصفوفة الأحادية
كيف نعرف المصوفوفة الأحادية في البرمجة
توجد عدة طرق شاهد الصورة التالية
27712758669_b911f7ecb8_b.jpg

151478787393871.jpg

يوجد أكثر من طريقة للتعريف البرمجي للمصفوفة
جميع ما سبق مصفوفة أحادية من النوع الرقمي الصحيح
39489315711_eff1b1686b_b.jpg

151480052308541.jpg

طريقة العد في السي شارب تبدأ من الصفر لذلك عندما نريد أن نعرف القيمة الأولى للمتغير الأول في المصفوفة نكتب
[0]ar1 ثم يساوي ثم قيمة المتغير
أما بالنسبة ل new سنتعرف عليها لاحقا وظيفتها عندما نعرف عنصر جديد
إذا أردنا طباعة عنصر من عناصر المصفوفة
نكتب التالي
27712803019_a3aa1a39b2_b.jpg

151480109726491.jpg

لاحظ أن القيمة المطبوعة هي الرقم 1
------
يتبع ....
 
التعديل الأخير:
اليوم سنتعلم المصفوفة ثنائية البعد كيف سنعرفها برمجية
39458912982_48d0fa66b6_b.jpg

أخبرتكم سابقا أن العد في السي شارب يبدأ من الصفر إذا إذا أردنا ان نعطي قيم للمصوفة السابقة ذو السطرين و العمودين (( أي أنها تحوي على أربع عناصر ))
لاحظ
27713264929_0eb1562e5c_b.jpg

وظيفة أعلن عن مصفوفة من النوع string ثنائية البعد عدد أسطرها ثلاثة و أعمدتها 2
 
حلقات التكرار
الدالة FOR

الصيغة العامة البرمجية
39462056862_c4f63bcacb_b.jpg

لاحظ الصورة السابقة : تجد داخل القوسين متغير رقمي صحيح (i) إفتراضي ,
قيمته الإفتراضية 0
ستقوم الدال for بتكرار الأوامر الموجودة داخل القوسين {}
إبتدائاً من قيمة i الإفتراضية إلى أن تصل إلى القيمة الأصغر من المتغير i التي سنستبدلها مكان length
أما بالنسبة ل
++i فنقول للدالة for أن تقوم بالزيادة على القيمة الإفتراضية لل i والتي هي هناقيمتها 0
رقم واحد


لاحظ الصورة الثانية و اكتب الأكواد البرمجية و نفذها ستفهم كلامي السابق
27716117189_3fc95e3cee_b.jpg

الكود البرمجي السابق يقول للكومبايلر إطبع قيمة المتغير i
خمس مرات ستكون النتيجة هي 0 1 2 3 4
لماذا لأن القيمة الإفتراضية ل i هي 0 ثم تقوم الدالة for بإضافة 1 أي 0+1 ستصبح القيمة 1 ثم تقوم الدالةfor بإضافة 1 أي 1+1 ستصبح قيمة i هي 2 إلى أن تصل إلى الرقم الأصغر من 5 وتتوقف
---------------------------------------------------
(( ملاحظة لا تنسى أن العد في البرمجة يبدأ من ال صفر ))


 
اليوم سنتعلم كيف نستخدم FOR في طباعة محتوى المصفوفة لاحظ الصورة التالية
47f4f8f9-ee38-4667-b486-24cdade7dbba
39520333712_cc35e6495e_b.jpg

1-وضعنا المتغير arr ثم length. هكذا أخبرنا الكومبايلر أن الحد الأعلى للتكرار هو عدد عناصر المصفوفة
2- أخبرنا الكوبايلر أن يطبع عناصر المصفوفة كيف سيحث ذلك ؟ For ستقوم تكرار العملية i مرة إلى أن يصل عدد التكرار 3 مرات
i قيمته في المرة الأولى 0
و بذلك سيقوم امر الطباعة بإظهار قيمة العنصر الأول من المصفوفة في المرة الثانية ستكون قيمة i هي 1 و سيقوم أمر الطباعة بإظهار العنصر الثاني و هكذا....
 
وظيفة
إستخدم الدالة For في طباعة جدول الضرب للرقم 9 مثلا
 
الدالة foreach
تستخدم في طباعة الجداول و المصفوفات((جداول البيانات ّ)) و هي من دالة من الحلقات التكرارية
و هي شبيها ب الدالة FOR لكن تختلف عنها ببعض النقاط
1-ليس لديها شرط للبداية
2- ليس لها عداد
3- تقوم بعرض جميع العناصر حتى تنتهي البيانات


مثال على استخدامها

39541143962_eefcc41d60_b.jpg


لاحظ

27794432499_dbb5997577_b.jpg

عرفتا متغير جديد من النوع إنتجر INT حيث سيقوم المتغير b بالدخول داخل المصفوفة arr المعرفة سابقة (عنصر عنصر )و سيقوم بتنفيذ الأوامر المسندة إليه على عناصر المصفوفة داخل القوسين { }


يجب أن يكون المتغير التابع للدالة foreach من نفس نوع المصفوفة
---------------------------------------
وظيفة أكتب مصفوفة نصية عدد عناصرها 4 و إطبع العناصر بواسطة الدالة foreach

 
اليوم درسنا عن الحلقة التكرارية
do while
إنظر إلى المثال التالي

38885313294_669d3ea46c_b.jpg

اكتب الأوامر السابقة كم في الصورة و نفذ البرنامج
ماهو مخرج البرنامج
ماذا تستنج ؟
ملاحظة :
الصيغة العامة ل الحلقة التكرارية do while

24726100327_e1d19ec958_b.jpg

وظيفة
عدل على البرنامج السابق و إجعل عدد التكرار يؤخذ من المستخدم
 
التراكيب struct
يمكنها أن تحوي على عدة عناصر و عدة خصائص
------------------------
لنفرض أننا نريد أن نكتب برنامج لمكتبة يقوم به المستخدم بإدخال اسم كتاب الرياضيات و سنة إصداره ثم يقوم بإدخال اسم كتاب علوم و سنة إصداره
تساعدنا التراكيب في إختصار الكود البرمجي و زيادة في قوته و سرعة في إنجاز البرنامج
لاحظ في الصورة كتبنا أمر struct خارج الدالة void
حيث أنها ستحوي على خصائص ل متغيرات فرعية
لاحظ الكود البرمجي
56b63d75-8116-4af9-aa11-af34d5e1af98
25741094858_731732d41f_b.jpg
ماسبق مثال بسيط لا معنى له لكن فقط للتوضيح
عرفنا تركيب و اسمه book و سيكون خصائص لهذا الكتاب
الإسم name سطر الأول
عدد الصفحات page السطر الثاني
كلمة puplic تعني جعل هذه الأكواد عامة يمكن أن تستخدم في أي class
في السطر الثالث و الرابع
إشتقينا من التركيب عنصرين (( كتاب رياضيات وو كتاب فكاهة ))
في السطر الخامس و السادس لاحظ كتبنا إسم الكتاب
book_math . name
وطلبنا من المستخدم إدخال اسم الكتاب حيث أنه أصبحت الخاصية name تخزن اسم الكتاب إن كان ل الرياضيات أو كتاب الفكاهي
و بنفس الأمر لعدد الصفحات

الآن نقوم بكتابة كود الإخراج
طباعة%20التراكيب.jpg
[/IMG]
2xxwzQA.jpg




 
المعددات enum

تكتب الأكواد البرمجية قبل الدالة void
استخداماتها : عندما تريد أن تكتب برنامج يحتوي على مجموعة كبيرة من الفئات تابعة لصنف واحد
مثلا أيام الأسبوع تابعة ل الأسبوع ... الأشهر تابعة للسنة ..... فإن ال enum تساعدنا في البرمجة وتنظيم الأكواد البرمجية و هي مدخل للبرمجة الكأنية التوجه
مثال بسيط عن إدخال ناتج الإمتحان فيخبرك البرنامج أن الطالب إجتازه أو رسب

39629933261_a04d3d679f_b.jpg

شرح ما سبق
عرفنا معدد exam_result
وضعنا بين القوسين العناصر التابعة لنتيجة الإمتحان وهي إما ناجح أو راسب
طلبنا من المستخدم إدخال النتيجة
وضعنا متغير رقمي صحيح يستقبل النتجية المدخلة من المستخدم
وضعنا شرط الرسوب أن تكون النتيجة أصغر من 50
ثم أوامر تحقق الشرط و هي إخبارنا بأن الطالب راسب و ذلك عن طريق كتابة المعدد مع إستدعاء عنصر الرسوب exam_result.failed
وضعنا شرط النجاح أن تكون أكبر أو تساوي 50
ثم أوامر تحقق الشرط و هي إخبارنا بأن الطالب ناجح و ذلك عن طريق كتابة المعدد مع إستدعاء عنصر النجاح exam_result.passed
 
اليوم سنتعلم عن اللوائح و هي شبيهة بالمصفوفات
لكن المصفوفات أوسع من حيث إستخدامتها لمزايها الأكثر
طريقة الإعلان عن اللوائح

-
39633158032_c7c2d383cf_b.jpg

لاحظ أننا استخدمنا الدالة foreach في طباعة اللائحة
-----
نضيف بعض الأوامر
38766942885_8e63bf0f97_b.jpg

وظيفة فسر ما سبق
 
شكرا لك أخي
جزاك الله خيرا
 
توقيع : Admob

يجب عليك تسجيل الدخول أو التسجيل لمشاهدة الرابط المخفي

أهلا وسهلا اخي تشرفت ب مرورك الكريم
(( سأتغيب ليومين ثم نتابع إن شاء الله ))
 
الدوال
هي عبارة عن مجموعة من الأوامر تنفذ عند إستدعائها في أي مكان من البرنامج
تكتب داخل ال class خارج الدالة main
فائدتها:
- إذا كان لدينا برنامج فيه أكواد مكررة فإن الدوال تساعدنا على عدم تكرار الأسطر البرمجة
-تساعد على تنظيم المشاريع الكبيرة
-في حال حصول مشكل يسهل اصلاحها لان الأوامر في مكان واحد
--------------------------------------------
void هي نوع من أنواع البيانات مثل ال string لكنها لا تعود بقيمة
-------------------------------------------
المثال سيوضح أكثر
سنقوم بكتابة برنامج يطلب من المستخدم كتابة إسمه ثم نعيده مع رسالة ترحيب
سنقوم بإستخدام الدوال حيث ستنفذ أمر طباعة رسالة الترحيب باسم المستخدم
كالتالي :
38857802175_91a314c9e0_b.jpg

أكتب ما سبق و لا حظ عندما تصل إلى سطر show وتفتح الأقواس يطلب منك
25884673558_80dccd999d_b.jpg



نفسر ما سبق
قمنا بتعريف دالة show تقوم بطباعة امر الترحيب و تستدعي البارمتر hello لتستبدله بأي متغير أثناء إستدعائها كما شاهدت في الصورة السابقة
و نحن استبدالناه ب المتغير name الذي يدخله المستخدم
--------------------------------
 
الإجراءات هي كالدوال لكن بفروق بسيطة
الإجراءات تعيد لنا قيمة
الإجراءات يجب أن تكون من نفس نوع البيانات
كما سنرى في الصورة التالية

39793882051_e7a7b15b20_b.jpg


أكتب ما سبق ولا حظ عندما تصل إلى الأمر الأخير و تكتبت sum وتفتح الأقواس يطلب منك إدخال المتغيرات الذي سيقوم بعملية الجمع عليها كما طلبنا منه في السطر الثاني بأن يعيد لناقيمة المتغير a , b عندما نستعدعي الإجراء sum
وهنا كتبنا داخل الأقواس نفذ عملية الجمع على المتغيرين x,z
 
تعلمنا سابقا كيف نستخدم الدوال و كيف نستدعيها
اليوم سنتعلم كيف نستهدف قيمة المتغير ونقوم باستبدالها عن طريق استدعاء الدالة
لاحظ الكود التالي
39798783502_7157391b0b_b.jpg


لاحظنا سابقا أن الاستبدال لم يستهدف قيمة المتغير في الذاكرة إنما قام فقط بتغير قيمته مؤقتا
إذا أردنا إستبدال قيمة المتغير في الذاكرة بحيث إذا قمنا بطباعته أو اسندعائه في مكان آخر ستظهر قيمة المدخلة من قبل الدالة
علينا إستخدام الكلمة المحجوزة ref أو out كالتالي :

25957566068_696ec97f13_b.jpg


إستبدل ref بــ out
ماذا تلاحظ ؟؟

----------------------------------------------------
وظيفة
مالفرق بين استخدام ref و out

67075415-2c27-4a1b-ae94-b116412b72b4
 
الدروس القادمة ستكون عن البرمجة كأنية التوجه ((يرجى مراجعة ماسبق من دروس ))
-------------------
سنتابع بعد يومين إن شاء الله
 
البرمجة الكأنية
الفئات class
هي الحاوية الشاملة ل خصائص الكائن ووظائفه
سننشأ مثال عن ذلك و ليكن لدينا برنامج فيه كلاس person فيه الحقول
العمر
اللون
الوزن
و سوف ننشأ إجراء يقوم بإعطاء المتغيرات ل اللون و العمر و الوزن
ثم ننشأ إجراء أخر يقوم بإظهار النتيجة عند إستدعائه
الكود البرمجي سيكتب بعد namespace
39043111695_edaaa4ac4d_b.jpg

لاحظ اننا أعطينا بيانات للكائن person أولا و لنعتبرها أسماء لحقول ستقوم الدالة info بملئها عند إستدعائها كما سنرى و ستوقم الدالة show بطباعتها عند استدعائها
الآن علينا إشتقاق كائن فرعي من الكائن الأساسي person وليكن الشخص man
كيف سيتم الإشتقاق
سنستخدم العامل new الذي سيقوم بإرجاع جميع الإجرائات التابعة الكائن الأساسي person إلى الكائن المشتق man
لاحظ التالي
337bd6b2-d6ba-40e3-8aee-44520cfe8978
39941447621_3c0b940e04_b.jpg

في 1 قمنا باشتقاق عنصر من الكائن الأساسي persone
بعدما قمنا بالإشتقاق أصبحت جميع الإجرائات تطبق على الكائن المشتق man
قمنا في السطر الثاني بإستدعاء الإجراء أو الدالة info و لاحظ عند فتح الأقواس يطلب منا الكومبايلر أن ندخل قيم الكائن
في السطر الثالث إستدعينا الإجاء show لطباعة قيم الحقول المدخلة
 
عودة
أعلى