YeHi@$MmZ مراقب عام منتدى أقسام الكليه ومشرف قسمى حاسبات وكورسات هندسيه
عدد المساهمات : 5020 تاريخ التسجيل : 25/06/2007 العمر : 37 الموقع : سرى رقم العضوية : 10 Upload Photos :
| |
YeHi@$MmZ مراقب عام منتدى أقسام الكليه ومشرف قسمى حاسبات وكورسات هندسيه
عدد المساهمات : 5020 تاريخ التسجيل : 25/06/2007 العمر : 37 الموقع : سرى رقم العضوية : 10 Upload Photos :
| موضوع: رد: تعلم السي شارب C#.net بأمثلة ممتعة وأسلوب مبسط الثلاثاء 17 يونيو - 7:39 | |
| | |
|
YeHi@$MmZ مراقب عام منتدى أقسام الكليه ومشرف قسمى حاسبات وكورسات هندسيه
عدد المساهمات : 5020 تاريخ التسجيل : 25/06/2007 العمر : 37 الموقع : سرى رقم العضوية : 10 Upload Photos :
| موضوع: رد: تعلم السي شارب C#.net بأمثلة ممتعة وأسلوب مبسط الثلاثاء 17 يونيو - 7:43 | |
| | |
|
YeHi@$MmZ مراقب عام منتدى أقسام الكليه ومشرف قسمى حاسبات وكورسات هندسيه
عدد المساهمات : 5020 تاريخ التسجيل : 25/06/2007 العمر : 37 الموقع : سرى رقم العضوية : 10 Upload Photos :
| موضوع: رد: تعلم السي شارب C#.net بأمثلة ممتعة وأسلوب مبسط الثلاثاء 17 يونيو - 7:46 | |
| | |
|
YeHi@$MmZ مراقب عام منتدى أقسام الكليه ومشرف قسمى حاسبات وكورسات هندسيه
عدد المساهمات : 5020 تاريخ التسجيل : 25/06/2007 العمر : 37 الموقع : سرى رقم العضوية : 10 Upload Photos :
| موضوع: رد: تعلم السي شارب C#.net بأمثلة ممتعة وأسلوب مبسط الثلاثاء 17 يونيو - 7:55 | |
| الدرس الثاني المتغيرات في الدرس الأول تعلمنا أن كل شيئ في الحاسوب يعتبر كائن وفي الحقيقة هناك نوعين من الكائنات : كائنات حقيقية: وهي التي لها صفات وأفعال ويمكن أن يكون لها تمثيل مرئي متغيرات : وهي متغيرات لا تحتوي على صفات أو أفعال وإنما تحتوي على قيمة محددة ولا تكون مرئية أي انه من الممكن أن يحتوي الكائن "المتغير" X على قيمة مخزنة في ذاكرة الحاسوب ومن الممكن أن تكون قيمة المتغير أما رقم أو نص أو حرف أو رقم عشري أو.... وإذا أردنا أن ننشئ متغير في ذاكرة الحاسوب فيجب أن نحدد نوع القيمة التي سيحملها المتغير مع العلم أننا نختار إسم الكائن كما نشاء مادام الإسم يحقق الشروط التالية: 1-أن يكون اسم المتغير حروف أو ارقام لاتينية 2-أن لا يكون أول حروف الإسم رقم , فهذا الإسم غير مسموح 5int بينما هذا مسموح int5 3-أن لا يحتوي الإسم على علامات أواشارات مثل # أو $ أو * أو + , الإشارة المسموحة فقط هي _ وهذه الشروط تنطبق على أسماء الكائنات أو المتغيرات التي سنقوم بإنشائها إذاً المتغير هو كائن يستخدم لتخزين قيمة من نوع محدد مثلاً إذا أردنا أن نعرف متغير اسمه x من نوع رقم سيكون الكود كالتالي: كود: ;int xوكلمة int إختصار لكلمة integer ومعناها عدد صحيح الكود السابق معناه أنا عرفنا متغير اسمه x سيحمل قيمة من نوع عدد صحيح لاحظ أنك تستطيع تغيير اسم المتغير كما تشاء المهم أن تراعي شروط التسمية الثلاثة وإذا أردنا تحميل هذا المتغير قيمة محدد يكون الكود كالتالي: كود: ;x=20الكود السابق معناه أن المتغير x يحمل القيمة 20 ويستمر بحمل القيمة حتي يتوقف البرنامج أو نحملة قيمة أخرى لاحظ الكود التالي: كود: ;int Var1 ;int Var2 ;Var1=10 ;Var2=Var1قمنا بتعريف متغيرين من نوع رقم صحيح ثم حملنا الرقم الأول قيمة 10 وفي السطر الأخير حملنا المتغير الثاني قيمة المتغير الأول أي أن المتغير الثاني يحمل أيضاً القيمة 10 ملاحظة مهمه:في لغات البرمجه معامل التساوي ليس تبادلي يعني أن Var2=Var1 لا تساوي أبداً Var1=Var2 لإن معامل = في لغات البرمجة يقوم بنقل قيمة المتغير في اليمين إلى المتغير في اليسار فلو عكسنا المعاملات في السطر الأخير من الكود السابق هكذا : كود: ;int Var1 ;int Var2 ;Var1=10 ;Var1=Var2 فسيظهر لنا خطأ عند السطر الأخير لأن المعالج سيحاول نقل ما في المتغير Var2 إلى المتغير Var1 ولكن المتغير Var2 لا يحتوي على أي قيمة لذلك سيظهر لنا الخطأ بعض أنواع المتغيرات وكيفية تعريفها: رقم صحيح int نص أو كلمة string رقم حقيقي "رقم يقبل الكسور العشرية مثل 41.51" double حرف char تاريخ أو وقت DateTime قيمة بوليانية bool معنى القيمة البوليانية أي أن المتغير يحمل قيمة صح أو خطأ , للتوضيح: كود: ;int k ;string w ;double m ;char n ;bool p ;k=15 ;w="هذا نص" ;m=12.15 ;n="م";p=trueلا حظ أن المتغير من نوع رقم لا يحتاج إلى علامتي إقتباس بينما المتغير من نوع نص أو حرف يحتاج إلى علامتي إقتباس المتغير من نوع bool يحمل أما قيمة true أو false ماذا لو جربنا الكود التالي: كود: ;k="نص"سيظهر لنا خطأ لأنا نحاول أن نحمل المتغير k قيمة من نوع نص بينما المفروض أن يحمل قيمة من نوع رقم كما عرفناه وأيضاً هذا الكود خاطئ لنفس السبب كود: ;k=wحيث أن w يحتوي على قيمة من نوع نص و k المفروض أن يحمل قيمة من نوع رقم ماذا لو كان لدينا هذا الكود: كود: ;w="45" ;k=wسيظهر لنا خطأ أيضاً عند السطر الثاني بالرغم من أن w يحمل رقم لأن المترجم لا يعرف أن w يحمل رقم , فهو يعتبر كل ما هو بين علامتي اقتباس على أنه نص وبالتالي فالمترجم لن يقبل أن يحمل k قيمة نصية لأن من المفروض أن يحمل رقم للتغلب على هذه المشكلة يوجد في بيئة التطوير كائن للتحويل ما بين الأنواع وهذا الكائن يقوم بتحويل القمية إلى أي نوع فإذا اردنا تنفيذ الكود السابق بإستخدام كائن التحويل: كود:;w="45"k=Convert.ToInt32;(w) الكائن Convert قام بأخذ قيمة w وحولها إلى رقم ثم حملها للمتغير k لاحظ أننا للوصول إلى أفعال أو صفات الكائن نكتب اسم الكائن ثم نقطة ثم فعل أو صفة الكائن فالكائن Convert يحتوي على فعل ToInt32 لذلك كتبنا اسم الكائن ثم نقطه ثم فعل الكائن ووضعنا بين القوسين المدخلات , ومن أفعال الكائن Convert: ToInt32 للتحويل إلى رقم صحيح كما رأينا في المثال السابق ToString للتحويل إلى نص ToDouble للتحويل إلى عدد عشري ToChar للتحويل إلى حرف ToBoolean للتحويل إلى قيمة بوليانية ملاحظة: الرقم الأخير من المتغير ToInt32 يعني حجمة في الذاكرة, مثلاً int16 حجمه 16 بت و int32 حجمة 32 بت ويوجد أيضاً 64, وكل نوع له مدى محدد لا يستطيع يتجاوزه, مثلاً int16 يستطيع خزن أي رقم من – 32,768 إلى 32,767 و int32 يستطيع خزن أي رقم من – 2,147,483,648 إلى 2,147,483,647 و int64 له مدى أكبر بكثير, لذلك إخترنا int32 كحل وسط , لأنه يخزن أرقام كبيرة , ولا يستهلك مكان كبير في الذاكرة يتبع ... التطبيق.. في الرد التالي
| |
|