[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
أولاً : موضوع بعنوان " [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]" , للأخت " جروح الوقت " موضوع طريف و رائع أنصح الكل و الجميع بلا استثناء بقراءته .
ثانياً : هذه قصة قصيرة لـ عمر بن عبدالعزيز - رضي الله عنه - , بعنوان " النهي عن المنكر "
كان عمر بن عبد العزيز- رضي الله عنه- معروفا بالحكمة والرفق ، وفي يوم من الأيام، دخل عليه أحد أبنائه،
و قال له:يا أبت! لماذا تتساهل في بعض الأمور؟! فوالله لو أني مكانك ما خشيت في الحق أحدا.
فقال الخليفة لابنه: لا تعجل يا بني؛ فإن الله ذم الخمر في القرآن مرتين، وحرمها في المرة الثالثة ،
وأنا أخاف أن أحمل الناس على الحق جملة فيدفعوه (أي أخاف أن أجبرهم عليه مرة واحدة فيرفضوه) فتكون فتنة.
فانصرف الابن راضيا بعد أن اطمأن لحسن سياسة أبيه، وعلم أن رفق أبيه ليس عن ضعف، ولكنه نتيجة حسن فهمه لدينه.
ثانياً : هذه قصة قصيرة لـ عمر بن عبدالعزيز - رضي الله عنه - , بعنوان " النهي عن المنكر "
كان عمر بن عبد العزيز- رضي الله عنه- معروفا بالحكمة والرفق ، وفي يوم من الأيام، دخل عليه أحد أبنائه،
و قال له:يا أبت! لماذا تتساهل في بعض الأمور؟! فوالله لو أني مكانك ما خشيت في الحق أحدا.
فقال الخليفة لابنه: لا تعجل يا بني؛ فإن الله ذم الخمر في القرآن مرتين، وحرمها في المرة الثالثة ،
وأنا أخاف أن أحمل الناس على الحق جملة فيدفعوه (أي أخاف أن أجبرهم عليه مرة واحدة فيرفضوه) فتكون فتنة.
فانصرف الابن راضيا بعد أن اطمأن لحسن سياسة أبيه، وعلم أن رفق أبيه ليس عن ضعف، ولكنه نتيجة حسن فهمه لدينه.
ثم نكمل ...
--------------------------------------------------------------------
توضيح أجزاء برنامج الـ C++ مثال برنامج بسيط ( Hello.cpp )
==========================================
كود:
1: #include <iostream.h>
2: int main()
3: {
4: cout << "Hello World!, Welcome to pcintv.com\n";
5: return 0;
6: }
--------------------------------------------------------------------------------
طبعاً الناتج معروف سلفاً , و هو Hello World!, Welcome to pcintv.com ,كما عرفنا سابقاً , السطر 1 بدأ بالرمز # و ينطق هاش , و الذي يعد اشارة للمعالج التمهيدي preprocessor , و يتم تشغيل المعالج في كل مرة تقوم فيها بتشغيل المترجم ( أو برنامج Visual C++ أو Compiler كلها أسماء تصلح ) , و يبحث عن الأسطر البادئة بـ # الرمز هاش ثم يقوم بالعمل مع هذه الأسطر , و سيتم شرح المعالج التمهيدي بشكل أفضل و موسع - ان شاء الله - في دروس قادمة .
كلمة include تعمل كأمر للمعالج التمهيدي و تخبره بأن ما سيتبعها هو اسم ملف , و تطلب منه البحث عن هذا الملف و ادراجه في هذا الموضع , يستخدم الملف iostream.h ( اختصار لـ Input / Output Stream ) بواسطة الكائن cout , و الذي يساعد في عملية الكتابة على الشاشة , يعمل السطر 1 على تضمين الملف iostream.h كما لو كنت كتبته بنفسك .
و يبدأ البرنامج فعلياً من السطر 3 باستخدام اجراء يسمى main () , جميع برامج سي ++ تشتمل على الاجراء main () , و الاجراء function هو كتلة من الأوامر التي تؤدي واحدا أو أكثر من الإجراءات ( ممكن نسميها : برنامج صغير - بريمج ) و عادة ما يتم استدعاء الاجراءات بواسطة اجراءات اخرى , لكن الاجراء main () له وضع خاص , و عند بدء برنامجك يتم استدعاء الاجراء main () تلقائياً .
و الإجراء main () يجب أن يذكر نوع القيمة التي سيعود بها , مثله في ذلك مثل بقية الاجراءات , و نوع القيمة التي سيعود بها الاجراء main () في البرنامج Hello.cpp هو Int , و الذي يعني أن هذا الاجراء سيعيد عددا صحيحاً إلى نظام التشغيل عند اكتماله . في هذه الحالة , سيعيد الاجراء القيمة صفر, كما هو مبين بالسطر 5 . إن إعادة إحدى القيم إلى نظام التشغيل واحدة من الخصائص الغير مهمة و التي يقل استخدامها , لكن أوامر C++ القياسية تتطلب الاعلان عن الاجراء main () كما هو موضح بالمثال .
---------------------------------------------------------------------
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
***ملاحظــهـ***:----------------------------------------------------------------------------
بعض برامج الترجمة ستتيح لك الاعلان عن الاجراء main () بحيث يعيد القيمة void . لم يعد هذا مقبولاً في أوامر سي++ , لذا يجب عليك استخدام الاجراء main () بحيث يعيد القيمة int , ثم اكتب return 0 في السطر الاخير من الاجراء.
---------------------------------------------------------------------------------------------
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
***ملاحظــهـ***:----------------------------------------------------------------------------
تمكنك بعض نظم التشغيل من اختبار القيمة التي يتم اعادتها بواسطة البرنامج , جرت العادة على اعادة القيمة صفر للإشارة إلى ان البرنامج تم انهاؤه بصورة طبيعية .
---------------------------------------------------------------------------------------------
تبدأ كافة الاجراءات بقوس الفتح "}" و تنتهي بقوس الاغلاق "{" . ستجد أن قوسي الاجراء main () في السطرين 3 , 6 و أن كل ماهو موجود بين قوسي الفتح و الاغلاق يعد جزءاً من الاجراء .ستجد العمود الفقري للبرنامج في السطر 4 حيث يستخدم الكائن cout لطباعة رسالة على الشاشة , سنتناول الكائنات بصفة عامة في درس قادم - بإذن الله - .
و إليك الكيفية التي يستخدم بها الكائن cout : أكتب الكلمة cout متبوعة بمعامل اعادة توجيه الناتج (>>) , و اياً كان الذي سيلي معامل اعادة توجيه الناتج (>>) , فسوف تتم كتابته على الشاشة , اذا كنت تريد كتابة سلسلة من الاحرف على الشاشة , فاحرص على تضمينها داخل علامتي تنصيص مزدوجة ( " ) , كما هو مبين بالسطر 4 .
السلسلة النصية هي مجموعة من الاحرف التي يمكن طباعتها , الحرفان الاخيران \n يطالبان الكائن cout بوضع سطر جديد بعد النص Hello World!, Welcome to pcintv.com , و سيتم توضيح هذا الأمر - ان شاء الله - بمزيد من التفاصيل في الدروس القادمة.
ثم يتم انهاء الاجراء main () في السطر 6 باستخدام قوس الإغلاق .
كلمة include تعمل كأمر للمعالج التمهيدي و تخبره بأن ما سيتبعها هو اسم ملف , و تطلب منه البحث عن هذا الملف و ادراجه في هذا الموضع , يستخدم الملف iostream.h ( اختصار لـ Input / Output Stream ) بواسطة الكائن cout , و الذي يساعد في عملية الكتابة على الشاشة , يعمل السطر 1 على تضمين الملف iostream.h كما لو كنت كتبته بنفسك .
و يبدأ البرنامج فعلياً من السطر 3 باستخدام اجراء يسمى main () , جميع برامج سي ++ تشتمل على الاجراء main () , و الاجراء function هو كتلة من الأوامر التي تؤدي واحدا أو أكثر من الإجراءات ( ممكن نسميها : برنامج صغير - بريمج ) و عادة ما يتم استدعاء الاجراءات بواسطة اجراءات اخرى , لكن الاجراء main () له وضع خاص , و عند بدء برنامجك يتم استدعاء الاجراء main () تلقائياً .
و الإجراء main () يجب أن يذكر نوع القيمة التي سيعود بها , مثله في ذلك مثل بقية الاجراءات , و نوع القيمة التي سيعود بها الاجراء main () في البرنامج Hello.cpp هو Int , و الذي يعني أن هذا الاجراء سيعيد عددا صحيحاً إلى نظام التشغيل عند اكتماله . في هذه الحالة , سيعيد الاجراء القيمة صفر, كما هو مبين بالسطر 5 . إن إعادة إحدى القيم إلى نظام التشغيل واحدة من الخصائص الغير مهمة و التي يقل استخدامها , لكن أوامر C++ القياسية تتطلب الاعلان عن الاجراء main () كما هو موضح بالمثال .
---------------------------------------------------------------------
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
***ملاحظــهـ***:----------------------------------------------------------------------------
بعض برامج الترجمة ستتيح لك الاعلان عن الاجراء main () بحيث يعيد القيمة void . لم يعد هذا مقبولاً في أوامر سي++ , لذا يجب عليك استخدام الاجراء main () بحيث يعيد القيمة int , ثم اكتب return 0 في السطر الاخير من الاجراء.
---------------------------------------------------------------------------------------------
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
***ملاحظــهـ***:----------------------------------------------------------------------------
تمكنك بعض نظم التشغيل من اختبار القيمة التي يتم اعادتها بواسطة البرنامج , جرت العادة على اعادة القيمة صفر للإشارة إلى ان البرنامج تم انهاؤه بصورة طبيعية .
---------------------------------------------------------------------------------------------
تبدأ كافة الاجراءات بقوس الفتح "}" و تنتهي بقوس الاغلاق "{" . ستجد أن قوسي الاجراء main () في السطرين 3 , 6 و أن كل ماهو موجود بين قوسي الفتح و الاغلاق يعد جزءاً من الاجراء .ستجد العمود الفقري للبرنامج في السطر 4 حيث يستخدم الكائن cout لطباعة رسالة على الشاشة , سنتناول الكائنات بصفة عامة في درس قادم - بإذن الله - .
و إليك الكيفية التي يستخدم بها الكائن cout : أكتب الكلمة cout متبوعة بمعامل اعادة توجيه الناتج (>>) , و اياً كان الذي سيلي معامل اعادة توجيه الناتج (>>) , فسوف تتم كتابته على الشاشة , اذا كنت تريد كتابة سلسلة من الاحرف على الشاشة , فاحرص على تضمينها داخل علامتي تنصيص مزدوجة ( " ) , كما هو مبين بالسطر 4 .
السلسلة النصية هي مجموعة من الاحرف التي يمكن طباعتها , الحرفان الاخيران \n يطالبان الكائن cout بوضع سطر جديد بعد النص Hello World!, Welcome to pcintv.com , و سيتم توضيح هذا الأمر - ان شاء الله - بمزيد من التفاصيل في الدروس القادمة.
ثم يتم انهاء الاجراء main () في السطر 6 باستخدام قوس الإغلاق .
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
لمحة سريعة عن الكائن cout
==================
ستتعلم في الدروس القادمة - بإذن الله - كيفية استخدام الكائن cout لطباعة البيانات على الشاشة , و في الوقت الحالي بمقدورك استخدام الكائن cout بدون الاستيعاب الكامل لكيفية عمله , لطباعة إحدى القيم أكتب الكلمة cout متبوعة بـمعامل الادراج (>>) , قم بكتابة المثال التالي كما هو معروض لكن مع استبدال الاسم Omar بإسمك .
كود:
1 : #include <iostream.h>
2 : int main()
3 : {
4 : cout << "Hello there.\n";
5 : cout << "Here is 5: " << 5 << "\n";
6 : cout << "The manipulator endl writes a new line to the screen.";
7 : cout <<
8 : endl;
9 : cout << "Here is a very big number:\t" << 70000 << endl;
10: cout << "Here is the sum of 8 and 5:\t" << 8+5 << endl;
11: cout << "Here's a fraction:\t\t" << (float) 5/8 << endl;
12: cout << "And a very very big number:\t";
13: cout << (double) 7000 * 7000 <<
14: endl;
15: cout << "Don't forget to replace Omar with your name...\n";
16: cout << "Omar is a C++ programmer!\n";
17: return 0;
18: }
--------------------------------------
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
***ملاحظــهـ***:----------------------------------------------------------------------------
بعض برامج الترجمة يتطلب منك وضع قوسين للإحاطة بعملية الجمع قبل تمريرها إلى الكائن cout . و لهذا , سنقوم بتغيير السطر 10 إلى :
كود:
cout << "Here is the sum of 8 and 5:\t" << (8+5) << endl;
---------------------------------------------------------------------------------------------
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
التحليل
======
في السطر الاول ستعمل العبارة #include <iostream.h> على إضافة الملف iostream.h إلى الأوامر المصدر , هذه العبارة مطلوبة إذا كنت تستخدم الكائن cout و الاجراءات المرتبطة به .
يمثل السطر 4 أبسط صور استخدام الكائن cout , ألا و هي طباعة سلسلة من الحروف !! , اما الرمز n\ عبارة عن حرف خاص بالتنسيق , و يعمل على الطلب من الكائن cout إلى وضع سطر جديد على الشاشة , و يتم نطقه سلاش slash ثم حرف n أو new line .
يتم تمرير ثلاث قيم إلى الكائن cout في السطر 5 , مع استخدام معامل الادراج ( ما هو معامل الادراج أصلاً ؟! ) للفصل بين القيم . القيمة الاولى هي سلسلة الاحرف "Here is 5: " , و ستجد القيمة 5 و قد تم تمريرها إلى معامل الإدراج , ثم حرف السطر الجديد ( دائماً ما يتم وضعه بين علامتي تنصيص مزدوجة أو مفردة) .
في السطر 7 سيتم طباعة رسالة اخبارية , ثم يتم استخدام معامل التحكم endl , و الغرض من استخدام معامل التحكم endl هو كتابة سطر جديد على الشاشة ( سيتم تفصيلها في الدروس القادمة - ان شاء الله - ) .
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
***ملاحظــهـ***:----------------------------------------------------------------------------
كلمة endl اختصار لكلمتي end line , و يتم نطقها end-ell و ليس end-one .
---------------------------------------------------------------------------------------------
في السطر 9 ستجد حرف تنسيق جديد t\ , يقوم بإدراج حرف جدولة , و هو مستخدم في السطور من 9 الى 12 لمحاذاة الناتج . يوضح السطر 10 أن الكائن cout سيقوم بعملية جمع بسيطة , سيتم تمرير قيمة 8+5 إلى الكائن cout , و سيتم طباعة الرقم 13 .
في السطر 11 سيتم ادراج القيمة 5/8 بلكائن cout , المصطلح float يخبر الكائن cout برغبتك في الحصول على القيمة في صورة كسر عشري . في السطر 13 سيتم تمرير القيمة 7000*7000 مع استخدام المصطلح double لإعلام الكائن cout برغبتك في عرض القيمة باستخدام الترميز الرياضي ( و سيتم شرحها في درس قادم - بمشيئة الله - ).
في السطر 15 ستقوم بوضع اسمك , لتجد ان الناتج يؤكد أنك مبرمج لغة C++ , لا بد من صحة هذه المعلومة , نظرا لأن الكمبيوتر أكدها .
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
و اتمنى أن يحوز هذا الدرس - أيضاً - على رضاكم ... [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
الأحد يوليو 14, 2013 6:30 am من طرف Admin
» نتائج الصف السادس ادبي
الأحد يوليو 14, 2013 6:29 am من طرف Admin
» نتائج الصف السادس علمي 2013
الأحد يوليو 14, 2013 6:28 am من طرف Admin
» نتائج الصف الثالث متوصط 2013
الأحد يوليو 14, 2013 6:27 am من طرف Admin
» Blended Learning التعليم المدمج
الجمعة نوفمبر 02, 2012 7:58 am من طرف نرجس
» استخدام التكنولوجيا الحديثة في التدريس
الجمعة نوفمبر 02, 2012 7:49 am من طرف نرجس
» أحلى مسجات رمضان الكريم لسنة 2012
الأربعاء يوليو 18, 2012 1:56 pm من طرف نرجس
» موقع ارسال رسائل مجانيه مجرب 100%
السبت أبريل 07, 2012 2:26 pm من طرف the killer boy
» ارسال رسائل من الانترنت الى الموبايل مجانآ
الخميس مارس 15, 2012 12:29 pm من طرف نرجس
» برنامج ارسال رسائل مجانا للموبايل
الخميس مارس 15, 2012 12:21 pm من طرف نرجس
» برنامج ارسال رسائل مجانا
الخميس مارس 15, 2012 12:18 pm من طرف نرجس
» فرص عمل في شركة اغاريد العراق للتجاره والمقاولات العامه المحدوده بغداد شارع فلسطين
الأربعاء فبراير 08, 2012 1:38 am من طرف Admin
» اغرب قصة حب حلوة
الأحد سبتمبر 18, 2011 3:13 am من طرف نرجس
» قصص حب واقعيه
الأحد سبتمبر 18, 2011 3:12 am من طرف نرجس
» أروع قصص حب أبكت العالم....أدخلو...تبكييي
الأحد سبتمبر 18, 2011 3:11 am من طرف نرجس