Advanced Search

المحرر موضوع: مقدمة في لغة البرمجة C++  (زيارة 29187 مرات)

0 الأعضاء و 1 ضيف يشاهدون هذا الموضوع.

مارس 15, 2005, 12:17:55 صباحاً
رد #15

Reemj

  • عضو مبتدى

  • *

  • 2
    مشاركة

    • مشاهدة الملف الشخصي
مقدمة في لغة البرمجة C++
« رد #15 في: مارس 15, 2005, 12:17:55 صباحاً »
هذا عبارة عن ملف مكتوب على السى

   my first page
      >
          

this is by using html
                 my first page    


      

وهذا هو الناتج( البرنامج بلغة السى باستخدام الملفات)
my first page
this is
my first page
by using html

مارس 16, 2005, 05:08:07 مساءاً
رد #16

Vipera Palestina

  • عضو خبير

  • *****

  • 1539
    مشاركة

  • مشرف قسم الحاسوب

    • مشاهدة الملف الشخصي
    • http://ala.aburayyan.com
مقدمة في لغة البرمجة C++
« رد #16 في: مارس 16, 2005, 05:08:07 مساءاً »
بالنسبة للكتابة باستخدام الملفات فأنا لم أفهم السؤال جيدا و أرجو منك مراسلتي على عنواني الالكتروني لأن هذه الدروس مخصصة للمبتدئين و مع الوقت سأحاول جاهدا تقديم مثل هذه المواضيع. أما الان فاعذرني مؤقتا!
الحياة مزيج جميل مستعص على الادراك البشري من القوة و الحب و الكره و الضعف و لا نمسها بشيء .. بل هي من يمسنا بكل شيء و طريقنا الوحيد لتغييرها هي تغيير أنفسنا من الداخل. و هو أصعب ما يمكن لي أن أتصور حدوثه.
كل شيء في هذه الحياة قد رسم بخط أسود... و إن لم نره !

ألا كل شيء ما خلا الله باطل و كل نعيم لا محالة زائل

مارس 16, 2005, 05:11:03 مساءاً
رد #17

Vipera Palestina

  • عضو خبير

  • *****

  • 1539
    مشاركة

  • مشرف قسم الحاسوب

    • مشاهدة الملف الشخصي
    • http://ala.aburayyan.com
مقدمة في لغة البرمجة C++
« رد #17 في: مارس 16, 2005, 05:11:03 مساءاً »
البرنامج الاول في لغة C++

في هذا الدرس سنكتب معا البرنامج الاول في اللغة C++
و لنبدأ فعليك فتح برنامج Microsoft Visual C++ 6
اذهب الى:
File -> New -> Win32 Console Application
على اليمين يوجد مربعين لإدراج النصوص.. اكتب اسم برنامجك في الأول و ليكن firstApp
في المربع الاخر نلاحظ ان مسار البرنامج " مكانه على القرص الصلب " قد تحدد. يمكنك تغييره الان فقط.

الان اضغط على OK

اختر الخيار الاول و هو An empty project و من ثم OK
و الان قد تجهزت واجهة العمل الخاصة بمشروعك .
اذهب مرة اخرى الى القائمة الرئيسية في البرنامج و اختر File -> New -> C++ source file
و اكتب اسمه .. و ليكن client
اضغط على OK
تظهر الان لديك شاشة البرنامج و فيها مكان فارغ ينتظر منك القيام بكتابة البرنامج الذي تريده.

فلنبدأ البرنامج.
اكتب الاسطر التالية:

#include
// This is my first C++ Application
void main()
{
cout<<"this is my first c++ application";
}

انتهى البرنامج و الان نشرح ما كتبناه:
السطر الاول:
هذا السطر يستدعي مكتبة من البرامج الفرعية و المساعدة و التي نحتاجها للتعامل مع المستخدم في برامج واجهة DOS
السطر الثاني:
هذا السطر يبدأ بالرموز ( // ) و هي تعني بداية تعليق سطر فردي ، التعليقات تستخدم كثيرا بين المبرمجين و هي لشرح العمليات أو لكتابة أي شيء يخطر على بالك. اكتب ما اردت أو لا تكتب شيئا فلا مشكلة ، لأن هذه التعليقات لا تخضع للفحص من قبل الـ Compiler الذي يحول برنامجك المكتوب بلغة البرمجة الى برنامج تنفيذي يشغله نظام التشغيل. و لكن لاحظ أن هذه الطريقة هي لسطر واحد فقط و هناك طريقة لطتابة أكثر من سطر للتعليق و سنأتي عليها لاحقا.
السطر الثالث:
في هذا السطر نرى تعريفا لوظيفة Function و هي الوظيفة الرئيسية لذلك سميت main و سنأتي على هذه التفاصيل لاحقا، نرى من بعد الـ main القوسين () و هما يستخدمان لكتابة لائحة المعطيات لكي يبدأ العمل و في حالتنا هذه لا يوجد أي شيء لنعطيه قبل ان يبدأ.
السطر الرابع و السادس :
هذان السطران هما مدى البرنامج الفرعي\ الوظيفة main و بهما يتحدد أين يبدأ و أين ينتهي هذا البرنامج الفرعي.
السطر الخامس:
في هذا السطر نكتب لب البرنامج و الأمر الوحيد فيه و هو طباعة الكتابة ( this is my first c++ application ) على الشاشة و يظهر هذا الكلام بين فواصل ثنائية كهذه:  "  و المعتمدة لكي تحيط بالكتابة.
أما عن cout<< فهو الامر المستخدم لإخراج ما بعده الى الشاشة.

لتشغيل البرنامج يجب عليك الذهاب الى القائمة و اختيار:
Build -> Execute firstApp.exe و من ثم الموافقة على الرسالة اللاحقة.
الى هنا ينتهي البرنامج الاول و يمكنكم الاستفسار عن أي شيء الى حين طرح الدرس اللاحق.
الحياة مزيج جميل مستعص على الادراك البشري من القوة و الحب و الكره و الضعف و لا نمسها بشيء .. بل هي من يمسنا بكل شيء و طريقنا الوحيد لتغييرها هي تغيير أنفسنا من الداخل. و هو أصعب ما يمكن لي أن أتصور حدوثه.
كل شيء في هذه الحياة قد رسم بخط أسود... و إن لم نره !

ألا كل شيء ما خلا الله باطل و كل نعيم لا محالة زائل

مارس 18, 2005, 10:46:51 مساءاً
رد #18

Vipera Palestina

  • عضو خبير

  • *****

  • 1539
    مشاركة

  • مشرف قسم الحاسوب

    • مشاهدة الملف الشخصي
    • http://ala.aburayyan.com
مقدمة في لغة البرمجة C++
« رد #18 في: مارس 18, 2005, 10:46:51 مساءاً »
الادخال و الاخراج

في هذا الدرس سنطبق تطبيقا عمليا على ادخال و اخراج القيم في لغة C++ .
و برنامجنا لهذا اليوم يعمل على جمع رقمين و من ثم اخراج ناتج الجمع:

#include
void main()
{

int a;
int b;
int result;
cout<<"Please insert the number a: ";
cin>> a;
cout<<"Please insert the number b: ";
cin>>b;
result=a+b;
cout<<"The result is: "<
}

فلنشرح البرنامج:
اعتقد ان السطور الاول و الثاني و الثالث و الأخير لا تحتاج لشرح!
نبدأ من السطر الرابع و الخامس و السادس :
في هذه السطور نعرف قيما في الذاكرة لادخال و تخزين الارقام.
و قد كان من الممكن كتابة هذه السطور الثلاثة على الشكل:
int a,b,result;
و لكن كتبناها على ثلاثة اسطر للتسهيل.
أما بالنسبة للأسطر السابع و التاسع فهي – كما شرحنا من قبل تستخدم لاخراج النص بين الفاصلتين.
الاسطر الجديدة هي الثامن و العاشر و اللذان نقوم فيهما بعملية ادخال من المستخدم ( يجب عليه ان يدخل القيمة ومن ثم ان يضغط Enter لتتم العملية ) .
و اما السطر الحادي عشر فهو لاتمام عميلة الجمع بين الرقمين و تخزين الناتج في المتغير result .

العمليات الحسابية و المنطقية في لغة C++ :
+ : لجمع رقمين معا
- : لايجاد ناتج طرح رقمين
* : ايجاد ناتج ضرب رقمين
/ : ايجاد ناتج قسمة رقمين
% : ايجاد قيمة باقي القسمة ( قسمة الاول عل الثاني )
| : عملية أو (or ) المنطقية
& : عملية و (and ) المنطقية
() : يمكن استخدام هذه الاقواس لتحديد الاولوية في العمليات.



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

ألا كل شيء ما خلا الله باطل و كل نعيم لا محالة زائل

مارس 18, 2005, 10:53:14 مساءاً
رد #19

Vipera Palestina

  • عضو خبير

  • *****

  • 1539
    مشاركة

  • مشرف قسم الحاسوب

    • مشاهدة الملف الشخصي
    • http://ala.aburayyan.com
مقدمة في لغة البرمجة C++
« رد #19 في: مارس 18, 2005, 10:53:14 مساءاً »
نظرا لصعوبة عرض اسطرالكود بشكل صحيح فقد قررت وضع الدروس على ملفات C++ جاهزة
و هذا هو برنامج الادخال و الاخراج



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

ألا كل شيء ما خلا الله باطل و كل نعيم لا محالة زائل

مارس 25, 2005, 10:56:30 صباحاً
رد #20

Vipera Palestina

  • عضو خبير

  • *****

  • 1539
    مشاركة

  • مشرف قسم الحاسوب

    • مشاهدة الملف الشخصي
    • http://ala.aburayyan.com
مقدمة في لغة البرمجة C++
« رد #20 في: مارس 25, 2005, 10:56:30 صباحاً »
أولا: أشكر المدراء لنقل هذا الموضوع الى قائمة المواضيع المثبتة في المنتدى .
ثانيا: آسف على التأخير في وضع الدروس و ذلك لأنني أمر حاليا بفترة امتحانات و لأن الدروس غير جاهزة لحد الان.
أعدكم بوضعها في أسرع ما يمكن.
الحياة مزيج جميل مستعص على الادراك البشري من القوة و الحب و الكره و الضعف و لا نمسها بشيء .. بل هي من يمسنا بكل شيء و طريقنا الوحيد لتغييرها هي تغيير أنفسنا من الداخل. و هو أصعب ما يمكن لي أن أتصور حدوثه.
كل شيء في هذه الحياة قد رسم بخط أسود... و إن لم نره !

ألا كل شيء ما خلا الله باطل و كل نعيم لا محالة زائل

أبريل 20, 2005, 09:53:40 صباحاً
رد #21

Vipera Palestina

  • عضو خبير

  • *****

  • 1539
    مشاركة

  • مشرف قسم الحاسوب

    • مشاهدة الملف الشخصي
    • http://ala.aburayyan.com
مقدمة في لغة البرمجة C++
« رد #21 في: أبريل 20, 2005, 09:53:40 صباحاً »
الجمل الانتقالية: if and switch

الاستخدام: تستخدم هذه الجمل للانتقال الى مجموعة اوامر في حال حصول شرط معين.

الشرط: هو أي تعبير حسابي أو منطقي يعيد أي قيمة غير الصفر!

مثال: اذا كانت قيمة x  اكبر من 10 اطبع ok

أنواع هذه الجمل:
1. جملة if العادية:
تتكون من : if(condition) statementblock
الشرط يتبع التعريف في الاعلى.
أما بالنسبة لـ statementblock فهي أي مجموعة من الأوامر المكتوبة بلغة السي ++ بحيث تكون محاطة بالمحددات { } و التي يمكن الاستغناء عنها اذا كانت جملة واحدة فقط.

2. جملة if else :
في هذه الحالة تتبع الجملة if  نفس الشروط السابقة تماما و لكن يمكنك الان معالجة حالتان و ليس واحدة:
في المرة السابقة كان من الممكن لك فقط أن تكتب مجموعة أوامر تطبق فقط اذا كان الشرط قد تنفذ. الان يمكنك كتابة مجموعة اخرى ان لم يتنفذ الشرط.
و تتكون هذه الحالة من :
 if(condition) statementblock
else statementblock

طبعا يمكن ان تكون معالجة الـ else بنفس الطريقة و يمكنك كتابة اكثر من جملة بنفس الطريقة



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

ألا كل شيء ما خلا الله باطل و كل نعيم لا محالة زائل

أبريل 20, 2005, 10:31:09 صباحاً
رد #22

Vipera Palestina

  • عضو خبير

  • *****

  • 1539
    مشاركة

  • مشرف قسم الحاسوب

    • مشاهدة الملف الشخصي
    • http://ala.aburayyan.com
مقدمة في لغة البرمجة C++
« رد #22 في: أبريل 20, 2005, 10:31:09 صباحاً »
هذا الملف هو مثال على if else
الحياة مزيج جميل مستعص على الادراك البشري من القوة و الحب و الكره و الضعف و لا نمسها بشيء .. بل هي من يمسنا بكل شيء و طريقنا الوحيد لتغييرها هي تغيير أنفسنا من الداخل. و هو أصعب ما يمكن لي أن أتصور حدوثه.
كل شيء في هذه الحياة قد رسم بخط أسود... و إن لم نره !

ألا كل شيء ما خلا الله باطل و كل نعيم لا محالة زائل

أبريل 20, 2005, 10:48:23 صباحاً
رد #23

Vipera Palestina

  • عضو خبير

  • *****

  • 1539
    مشاركة

  • مشرف قسم الحاسوب

    • مشاهدة الملف الشخصي
    • http://ala.aburayyan.com
مقدمة في لغة البرمجة C++
« رد #23 في: أبريل 20, 2005, 10:48:23 صباحاً »
جملة switch :
في هذه الحالة يوجد لدينا متغير و من الممكن ان يأخذ حالات معينة و يلزمنا متابعة هذه الحالات كل على حدة أو مع تداخل بينها.

هنا تختلف المعمارية العامة للجملة عن الجملة if  بالتالي:
نكتب القيمة المتوقعة مسبوقة بكلمة case و نتبعهما بنقطتان ( : ) و نبدأ بكتابة الجمل التي تعالج هذه الحالة.
في نهاية الجمل التي تعالج كل حالة نضع جملة break; و التي تعني الخروج من الجملة switch فورا لأننا لا نريد ان تتداخل الجمل معا.

في حالة وصول قيمة غير متوقعة للمتغير فانه يمكننا معالجة هذه الحالة بجملة default و التي تعني أي ادخال غير معالج.

في المثال الملحق نعالج فكرة أن نكتب ما هو الرقم المدخل من قبل المستخدم اذا كان بين الرقمين 1 الى 5 ، اما في حالة اذا ادخل المستخدم رقما خارج هذا النطاق فان البرنامج ينبه المستخدم ان الادخال كان خارج النطاق المسموح. و قد تناسينا وضع الجملة break في حالة الادخال 3 .
الحياة مزيج جميل مستعص على الادراك البشري من القوة و الحب و الكره و الضعف و لا نمسها بشيء .. بل هي من يمسنا بكل شيء و طريقنا الوحيد لتغييرها هي تغيير أنفسنا من الداخل. و هو أصعب ما يمكن لي أن أتصور حدوثه.
كل شيء في هذه الحياة قد رسم بخط أسود... و إن لم نره !

ألا كل شيء ما خلا الله باطل و كل نعيم لا محالة زائل

أبريل 20, 2005, 10:55:57 صباحاً
رد #24

Vipera Palestina

  • عضو خبير

  • *****

  • 1539
    مشاركة

  • مشرف قسم الحاسوب

    • مشاهدة الملف الشخصي
    • http://ala.aburayyan.com
مقدمة في لغة البرمجة C++
« رد #24 في: أبريل 20, 2005, 10:55:57 صباحاً »
اعيد و أكرر.. ان احتجت لأي شيء ارجوك رجاءا حارا أن تكتب سؤالك أو ترسله لي عبر البريد الالكتروني ان كان خارج الموضوع الذي نتناقش فيه حاليا.

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

ألا كل شيء ما خلا الله باطل و كل نعيم لا محالة زائل

أبريل 20, 2005, 02:58:32 مساءاً
رد #25

ابو يوسف

  • عضو خبير

  • *****

  • 10867
    مشاركة

  • مشرف اداري

    • مشاهدة الملف الشخصي
مقدمة في لغة البرمجة C++
« رد #25 في: أبريل 20, 2005, 02:58:32 مساءاً »
السلام عليكم

اخي الكريم Vipera Palestina

تابعت حتى الان ما كنت كتبته سابقا اي حتى موضوع الادخال والاخراج

وقريبا جدا سأكمل الباقي

انا استخدم نفس البرنامج microsoft visual c++

اي انه من المفروض ان يكون التعامل مع بيئة النوافذ وليس مع بيئة الدوس كما تظهر النتائج

كيف يمكن ان نظهر النتائج من خلال بيئة النوافذ؟

جزاك الله كل خير

'<img'>

أبريل 20, 2005, 04:33:11 مساءاً
رد #26

ابو يوسف

  • عضو خبير

  • *****

  • 10867
    مشاركة

  • مشرف اداري

    • مشاهدة الملف الشخصي
مقدمة في لغة البرمجة C++
« رد #26 في: أبريل 20, 2005, 04:33:11 مساءاً »
السلام عليكم

سؤال اخر اخي الكريم



ما الذي تم استدعاؤه هنا؟

شكرا لك

'<img'>

أبريل 22, 2005, 12:13:00 مساءاً
رد #27

Vipera Palestina

  • عضو خبير

  • *****

  • 1539
    مشاركة

  • مشرف قسم الحاسوب

    • مشاهدة الملف الشخصي
    • http://ala.aburayyan.com
مقدمة في لغة البرمجة C++
« رد #27 في: أبريل 22, 2005, 12:13:00 مساءاً »
بالنسبة للسؤال الاول فالحل يكمن في ان تكتب برامج تستدعي اوامر من مكتبات الويندوز نفسه. و هذا يتم عن طريق Win API أو MFC programming و هي تستلزم كتابة أوامر طويلة بعض الشيء و معقدة. فأحببت أن نبدأ بأصل اللغة أولا حتىنتقن مفاهيمها الاساسية ومن ثم ننتقل الى Windows programming .

أما بالنسبة للسؤال الثاني .. اعذرني بس مش مبين السؤال !
اللي ظاهر عندي: مالذي تم استدعاؤه هنا
فقط!



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

ألا كل شيء ما خلا الله باطل و كل نعيم لا محالة زائل

أبريل 23, 2005, 04:22:43 صباحاً
رد #28

ابو يوسف

  • عضو خبير

  • *****

  • 10867
    مشاركة

  • مشرف اداري

    • مشاهدة الملف الشخصي
مقدمة في لغة البرمجة C++
« رد #28 في: أبريل 23, 2005, 04:22:43 صباحاً »
السلام عليكم

المعذرة اخي الكريم

ما كتبته لم يظهر لكونه بين قوسين

نموذج كود
<iostream.h>


وجزاك الله كل خير على ردك على استفساري الاول

'<img'>




أبريل 23, 2005, 05:12:48 صباحاً
رد #29

ابو يوسف

  • عضو خبير

  • *****

  • 10867
    مشاركة

  • مشرف اداري

    • مشاهدة الملف الشخصي
مقدمة في لغة البرمجة C++
« رد #29 في: أبريل 23, 2005, 05:12:48 صباحاً »
السلام عليكم

اخي الكريم Vipera Palestina

انتهيت من دراسة if else & switch

ما رأيك لو قمت بإعطاء تمارين؟

وشكرا جزيلا لك

'<img'>