الخـطوة الثانيـة
بالنسبة للخـطوة الثانيـة فهذه المرة سنقوم بكتابة كـود بسيط ولكنـه متقـدم
بالنسبة لأي مبتدئ برمجـة ألا وهـو عبارة عـن كـود يقوم بجمع عـددين تقـوم
أنت بإدخالهـما.
CODE
1. # include <iostream.h>
2. main()
3. {
4. int num1 , num2;
5. cout << "the first number:\n " ;
6. cin >> num1;
7. cout << " the second number:\n";
8. cin >> num2;
9. cout << "the Value is: " << num1+num2;
10. return 0;
11. }
لا مشكلة لديك بالنسبـة للأسطر 1 و 2 و 3 و 10 و11 ، إذا لم تفهــمها فـارجع
إلى فقرة الخـطوة الأولـى.
السطر الرابع:
كما قلنا فـالمطلوب أن يقـوم مستخــدم البرنــامج بإدخـال عــددين اثنـين ، ألا
تلاحـظ معـي أن هـذان العــددان فـي لغــة الرياضـيات هــما متغيـران اثنـين ،
الامـر نفســه بالنسـبة للبرمجــة فعلينـا أولاً اعتبـار هـذان العــددان متغيـران
وبالتالي نطلب من البرنـامج أن يقوم بحجـز ذاكـرة لعــددين اثنـين ثـم إذا قـام
مستخـــدم البرنـــامج بإدخــال عـــددين فــإن البرنـــامج يقــوم بأخـــذ العـــددين
وتخزينهـما في موقع الذاكرة الذي طلبنا من البرنـامج حجزهـما في البدايــة ،
وهذا واضح في السطر الرابع فلقـد قمنـا بتسميــة متغيـران اثنـين الأول هــو
num1 والثاني هـو num2 ، الآن كيف يعلم البرنـامج أن num1 و num2 هــما
عـددان بإمكانـه فعل ذلك عـن طريق أول كلمـة في السـطر الرابـع ألا وهــي
int وهـي إختصار للكلمـة integer أي الأعـداد الصحيحــة والاختصـار int هــو
عبارة عـن نمط بيانات بإمكـانك عـن طريق تغيير الكلمـة int إلـى char اعتبـار
المتغيران num1 و num2 عبارة عـن حرفين اثنين وليس عـددين. لاحـظ أيضـاً
أن هـناك فاصلـة غيـر منقـوطــة ( , ) بـين اسـمي المتغيـران وهـذه ضروريــة
فكيف يعرف البرنـامج أنك انتهيت من كتابة اسم المتغير الأول ، ولاحـظ معـي
أيضاً أن الأمر انتهى بالفاصلـة المنقـوطـة ( ; ) .
الآن هـناك ملاحـظـة جــديرة بالاهتمـام وهــي أنــه بإمكــانك تعــديل السـطر
الرابع ليصبح سطران اثنين هـكذا:
1. int num1 ;
2. int num2;
والطريقتين صحيحتان إلا أن الطريقـة الأولـى أفضل بسبب أنها مختصرة.
السطر الخامس والسابع:
السطران الخامس والسابع في أغلبهـما مفهــومان فـلا جــديد فيهــما إذا لـم
تفهـمهـما فارجع إلى فقرة الخـطوة الأولـى ؛ إلا أن هـناك أمراً بالغ الأهـميــة؛
لاحـظ معـي الجملة التي طلبنا من البرنـامج طباعـتها:
"the first number:\n "
كما ترى فإن السبب في أننا طبعـنا هذه الجملة والجملـة في السطر السابع
حتى نوضح لمستخـدم البرنـامج أن عليه إدخال العـدد الأول أو العــدد الثـاني
حسب السطر السـابع ؛ ولكـن هـل تـرى آخـر الجملــة السابقــة أقصـد هـذه
العلامـة ( "n\" ) إن هذه العلامــة لـن يقـوم البرنــامج بطباعتــها بـل إن هـذه
العلامـة في الحقيقـة إختصار ، فهذه العلامـة n\ تطلب من مؤشر الكتابـة أن
يذهب إلى سـطر جديـد وبالتـالي فحينمـا يقـوم مستخــدم البرنــامج بإدخـال
العـدد الاول فلن يقوم بإدخاله بجانب الجملة السابقـة بل في السطر التـالي
من الجملة السابقـة.
العلامــة n\ هــي تقنيــة فعالـة لتمثيـل المحـارف غيـر المرئيــة أو تلـك التـي
تصعب طباعتها فالفعل الـذي تقـوم بــه أشبــه مـا يكـون بالضغــط علـى الـزر
ENTER علـى لوحــة المفـاتيح وأنـت فـي محـرر Word أي أن مؤشــر الكتابـة
ينتقل إلى سطر جـديد.
السطر السادس والثامن:
بعـكس السطران الخامس والسابع فإن هـذان السطران يطلبـان منك إدخـال
عـددين اثنـين ، حيـث يقـوم المتـرجم بأخــذ العــدد الـذي تقـوم بإدخالــه فـي
السطر السادس ويضعـه في المتغير num1 ويأخذ العـدد الذي تقوم بإدخالـه
في السطر الثامن ويضعـه في المتغير num2 ، هذه هـي الفكرة ، أمـا حــول
الكيفيـة فهل تتذكر المكتبـه iostream والكائن cout وما يقومـان بـه ، فـالأمر
هـو هـنا نفسـه ، فهـناك كائن جـديد يختص بالإدخال هــو cin وينطـق هــكذا
(سي إن ) بعـد ذلك نستخـدم معامل الإدراج وهـو هـكذا << ولـيس معــامل
الإخــراج الخــاص بالكــائن cout ، ثــم نكتــب اســم المتغيــر الــذي نريــد مــن
المستخـدم أن يقوم بإدخال قيمـة هذا المتغير.
السطر التاسع:
يقوم الكائن cout أيضاً بطباعـة المتغيرات ، وفـي نهــاية الجملـة المطبـوعــة
يقـوم البرنــامج بطباعــة هـذه العبـارة num2+num1 وبمـا أنهـا ليسـت بـين
علامتي تنصيص فلن يقوم البرنـامج بطباعتها كجملة عاديــة علـى الشاشــة
أي هـكذا ( num2+num1 ) بل سيقوم بأخـذ قيمــة المتغيـر num1 ويجمعهـا
مع قيمـة المتغير num2 ويطبع الناتج .
حاول كتابة الكـود السابق وتجريبـه على جهـازك.
بالنسبة للخـطوة الثانيـة فهذه المرة سنقوم بكتابة كـود بسيط ولكنـه متقـدم
بالنسبة لأي مبتدئ برمجـة ألا وهـو عبارة عـن كـود يقوم بجمع عـددين تقـوم
أنت بإدخالهـما.
CODE
1. # include <iostream.h>
2. main()
3. {
4. int num1 , num2;
5. cout << "the first number:\n " ;
6. cin >> num1;
7. cout << " the second number:\n";
8. cin >> num2;
9. cout << "the Value is: " << num1+num2;
10. return 0;
11. }
لا مشكلة لديك بالنسبـة للأسطر 1 و 2 و 3 و 10 و11 ، إذا لم تفهــمها فـارجع
إلى فقرة الخـطوة الأولـى.
السطر الرابع:
كما قلنا فـالمطلوب أن يقـوم مستخــدم البرنــامج بإدخـال عــددين اثنـين ، ألا
تلاحـظ معـي أن هـذان العــددان فـي لغــة الرياضـيات هــما متغيـران اثنـين ،
الامـر نفســه بالنسـبة للبرمجــة فعلينـا أولاً اعتبـار هـذان العــددان متغيـران
وبالتالي نطلب من البرنـامج أن يقوم بحجـز ذاكـرة لعــددين اثنـين ثـم إذا قـام
مستخـــدم البرنـــامج بإدخــال عـــددين فــإن البرنـــامج يقــوم بأخـــذ العـــددين
وتخزينهـما في موقع الذاكرة الذي طلبنا من البرنـامج حجزهـما في البدايــة ،
وهذا واضح في السطر الرابع فلقـد قمنـا بتسميــة متغيـران اثنـين الأول هــو
num1 والثاني هـو num2 ، الآن كيف يعلم البرنـامج أن num1 و num2 هــما
عـددان بإمكانـه فعل ذلك عـن طريق أول كلمـة في السـطر الرابـع ألا وهــي
int وهـي إختصار للكلمـة integer أي الأعـداد الصحيحــة والاختصـار int هــو
عبارة عـن نمط بيانات بإمكـانك عـن طريق تغيير الكلمـة int إلـى char اعتبـار
المتغيران num1 و num2 عبارة عـن حرفين اثنين وليس عـددين. لاحـظ أيضـاً
أن هـناك فاصلـة غيـر منقـوطــة ( , ) بـين اسـمي المتغيـران وهـذه ضروريــة
فكيف يعرف البرنـامج أنك انتهيت من كتابة اسم المتغير الأول ، ولاحـظ معـي
أيضاً أن الأمر انتهى بالفاصلـة المنقـوطـة ( ; ) .
الآن هـناك ملاحـظـة جــديرة بالاهتمـام وهــي أنــه بإمكــانك تعــديل السـطر
الرابع ليصبح سطران اثنين هـكذا:
1. int num1 ;
2. int num2;
والطريقتين صحيحتان إلا أن الطريقـة الأولـى أفضل بسبب أنها مختصرة.
السطر الخامس والسابع:
السطران الخامس والسابع في أغلبهـما مفهــومان فـلا جــديد فيهــما إذا لـم
تفهـمهـما فارجع إلى فقرة الخـطوة الأولـى ؛ إلا أن هـناك أمراً بالغ الأهـميــة؛
لاحـظ معـي الجملة التي طلبنا من البرنـامج طباعـتها:
"the first number:\n "
كما ترى فإن السبب في أننا طبعـنا هذه الجملة والجملـة في السطر السابع
حتى نوضح لمستخـدم البرنـامج أن عليه إدخال العـدد الأول أو العــدد الثـاني
حسب السطر السـابع ؛ ولكـن هـل تـرى آخـر الجملــة السابقــة أقصـد هـذه
العلامـة ( "n\" ) إن هذه العلامــة لـن يقـوم البرنــامج بطباعتــها بـل إن هـذه
العلامـة في الحقيقـة إختصار ، فهذه العلامـة n\ تطلب من مؤشر الكتابـة أن
يذهب إلى سـطر جديـد وبالتـالي فحينمـا يقـوم مستخــدم البرنــامج بإدخـال
العـدد الاول فلن يقوم بإدخاله بجانب الجملة السابقـة بل في السطر التـالي
من الجملة السابقـة.
العلامــة n\ هــي تقنيــة فعالـة لتمثيـل المحـارف غيـر المرئيــة أو تلـك التـي
تصعب طباعتها فالفعل الـذي تقـوم بــه أشبــه مـا يكـون بالضغــط علـى الـزر
ENTER علـى لوحــة المفـاتيح وأنـت فـي محـرر Word أي أن مؤشــر الكتابـة
ينتقل إلى سطر جـديد.
السطر السادس والثامن:
بعـكس السطران الخامس والسابع فإن هـذان السطران يطلبـان منك إدخـال
عـددين اثنـين ، حيـث يقـوم المتـرجم بأخــذ العــدد الـذي تقـوم بإدخالــه فـي
السطر السادس ويضعـه في المتغير num1 ويأخذ العـدد الذي تقوم بإدخالـه
في السطر الثامن ويضعـه في المتغير num2 ، هذه هـي الفكرة ، أمـا حــول
الكيفيـة فهل تتذكر المكتبـه iostream والكائن cout وما يقومـان بـه ، فـالأمر
هـو هـنا نفسـه ، فهـناك كائن جـديد يختص بالإدخال هــو cin وينطـق هــكذا
(سي إن ) بعـد ذلك نستخـدم معامل الإدراج وهـو هـكذا << ولـيس معــامل
الإخــراج الخــاص بالكــائن cout ، ثــم نكتــب اســم المتغيــر الــذي نريــد مــن
المستخـدم أن يقوم بإدخال قيمـة هذا المتغير.
السطر التاسع:
يقوم الكائن cout أيضاً بطباعـة المتغيرات ، وفـي نهــاية الجملـة المطبـوعــة
يقـوم البرنــامج بطباعــة هـذه العبـارة num2+num1 وبمـا أنهـا ليسـت بـين
علامتي تنصيص فلن يقوم البرنـامج بطباعتها كجملة عاديــة علـى الشاشــة
أي هـكذا ( num2+num1 ) بل سيقوم بأخـذ قيمــة المتغيـر num1 ويجمعهـا
مع قيمـة المتغير num2 ويطبع الناتج .
حاول كتابة الكـود السابق وتجريبـه على جهـازك.
ليست هناك تعليقات:
إرسال تعليق