مشاهدة النسخة كاملة : خطوة بخطوة نحو احتراف السي بلس بلس (++c)
swordlord99
08-09-2006, 12:15 AM
السلام عليكم ورحمة الله وبركاته , في البداية أرحب بكل اعضاء هذا المنتدى , واخص بالشكر مشرف هذا المنتدى لما يقوم به من جهد .
في البداية ساعطي مقدمه عن البرمجه وما هي امثل السبل لتعلمها ومن ثم ساشرح دروس سي بلس بلس(++c) , وارجو من الاخوان الخبراء ان يقرأو الموضوع وينقدوه ويقوموا بالتنويه في حالة ورود خطأ لان جل من لا يسهو وعلم الانسان ما لم يعلم.
تعتمد البرمجه في المرتبه الاولى على المنطق , وتعتبر تفرع من قسم العلوم , ويشترط في الشخص المقدم على تعلم البرمجه ان تتوفر فيه العديد من الصفات اهمها :
1-القدرة على التحليل المنطقي لانها تعتمد على الخوارزميات والرياضيات بالدرجه الاولى .
2-التمتع بلغة انجليزية جيدة لانها المفتاح في التعلم خصوصا في هذا النوع من العلوم .
3-الصبر والتحمل لان البرمجه تحتاج ممارسة وتجريب للوصول للحل الانجع للمعضلة البرمجية التي تواجهك.
4-عدم الغرور والثقة الزائدة بالنفس لان البرمجة لغة متجددة بشكل سريع وكلما ظننت نفسك اتقنت لغة معينة ظهرت لغة جديدة او تم اصدر تحديث جديد لنفس اللغة.
5-محاولة الاعتماد على شخص ذو خبرة لكي يرشدك الى الطريق الصحيح لاحتراف البرمجه .
ارجو ان لا اكون قد عقدت البعض من البرمجه , البرمجه سهلة اذا عرفت مبادئها وكانت عندك الرغبة الكافية لاتقانها ....
لقد قرأت اغلب المواضيع المطروجه في المنتدى وكانت كلها اقتراحات ,, وانا ساطبق احدى هذه الاقتراحات على ارض الواقع وهي البدء بالشرح ....ولكن اعذروني قليلا لاني ما زلت ارتب افكاري واحاول النهوض بافكار تفيد هذا القسم وترتقي به ليصبح له شان وتعم الفائدة على الجميع.
swordlord99
08-09-2006, 12:16 AM
لقد اخترت هذه الللغة لنها تعتبر من اهم اللغات في عالم البرمجه وتعلمها يؤهلك الى تعلم معظم اللغات الاخرى بسهولة , تختلف هذه اللغة عن ما سبقها من اللغات مثل الباسكال(Pascal) ان ال (C++) تعتبر (Object Oriented Programming language) , المعذرة من الاخوان لكن لا يمكن ترجمه كل شيء لان هناك مصطلحات تخص البرمجه ويجب على الكل حفظها ومعرفة ما تدل عليه لانها ستتكرر معاه في كل اللغات .
سنبدأ بطباعه جملة صغيرة (( Welcome to C++ in bramjnet))
ولتطبيق هذه الجمله يجب عليك ان تقوم بتشغيل البيئة التي ستقوم بتنفيذ البرنامج عليها , هناك عده انواع من الكومبايلرز معنية بلغة السي بلس بلس منها , ال بورلاند (Borland) والفيجوال سي بلس بلس (Visual c++.net) وال تيربو (Turbo) .
#include<iostream>
int main()
{
cout<<"Welcome to C++ in bramjnet\n ";
return 0;
}
سيستغرب البعض ماهه الكتابة وما المقصود بها ,
كل برنامج سي بلس بلس يحتاج الىmain() function في البداية هذا كافي في هذه المرحلة وسنقوم بشرح ال functions باسهاب عند الوصول اليها .
اهم شيء يجب ان تعرفه في هذه الدرس هو كيفية الطباعه ..على الشاشة .. نستخدم COUT لطباعه اي شيء على شاشة التنفيذ .
والفورمات المتسعمل هو :
;" النص المراد طباعته ">>cout
وسنرى في الدروس القادمة انه يمكننا طباعه اشياء اخرى غير النصوص مثل قيم معينة ستذكر لاحقا في حينها.
اما ال n\ التي وردت في جملة الطباعه تدل على سطر جديد (new line)
ويجب ان يكون النص ضمن " " وان ينتهي بفاصلة منقوطه واي خلل في هذا الفورمات سيحدث لك (error) على ال (compiler) المستخدم .
veto_44
08-09-2006, 12:29 AM
اشكر الاخ swordlord99 على تفاعله الرائع مع المنتدى
مجهود كبير يشكر عليه وعلى كل ما يبذله من اجل المنــتدى
الشرح بسيط ومفيد للمبتدئبن وبالفعل انا اعتبر لغه السي ++
المفتاح لباقي لغات البرمجة
تقبل فائق الاحترام والتقدير
alienblueshark
08-09-2006, 12:42 AM
مشكور اخي على الموضوع الرائع
وحقا لغة سي ++ من اهم لغات البرمجة
swordlord99
08-10-2006, 06:13 AM
ارجو ان تكونوا قد استفدتوا من الدرس الاول , من الان فصاعدا ستاخذ الدروس طابعا اكثر جديه وستزداد مهمتك يوما بعد يوم , لانه من الصعب شرح كل شيء بالتفصيل , فيجب عليكم المتابعه والتحضير من خلال المراجع المطروحه في المنتدى , لكي نتمكن من شرح لغات اخرى .
ساعطيكم بعض المعلومات تفيد الطباعه : cout
\n لطباعه سطر جديد
\t لعمل 7 فراغات
\r يرجع المؤشر لبدايه السطر
\a لعمل انذار صوتي
\\ لطباعه الباك سلاش
\" لطباعه الدبل كوت
البرنامج الثاني : -
#include<iostream>
Int main ()
{
Int integer1,integer2,sum;
Cout<<"enter the first integer" \n;
Cin>>integer1;
Cout<<"enter the second integer" \n;
Cin>>integer2;
Sum=integer1+integer2;
Cout<<"sum is <<sum;
Return 0;
}
هنا نتعلم كيفية تعريف متغير واعطاءه قيمة من الكيبورد .
عند تعريف متغير نسبقه بنوعه : مثلا int , double , float , string
ويمكن اعطاء قيمة للمتغير عند التعريف او يمكننا اعطاءه قيمة من الكيبورد باستخدام امر cin
العمليات الحسابية :
الجمع +
الطرح -
الضرب *
القسمة /
باقي القسمة %
الان سأذكر الاولويات المستخدمه لايجاد ناتج معادلة جبرية :
1) الاقواس ( )
2) الضرب أو القسمة أو باقي القسمة
3) الجمع أو الطرح
في حالة وجود اثنين او اكثر من نفس المستوى نأخذ التي على اليسار اولا.
مثلا كانت هناك + و – نأخذ التي على اليسار .
مثال :
اوجد قيمة المعادله التالية :
Y=a * b * b * b + c * b + d
لتسهيل العملية نضع اقواس
فتصبح
Y=( a * b * b * b)+(c * b)+d
الحل :
لنفرض ان
A=1
B=2
C=3
D=4
Y=(1*2*2*2)+(3*2)+4
نبدا بالاقواس , القوس الايسر , عملية الضرب من اليسار (1*2) الناتج = 2
نضرب الناتج (2) مع ال 2 اليسرى والناتج =4
نضرب الناتج مع ال 2 المتبقية والناتج = 8
اذن ناتج القوس الايسر =8
ناتج القوس الايمن =6
نجمع ناتج القوس الايسر مع ناتج القوس الايمن ويصبح 14
نجمع الناتج مع ال 4 فيصبح الناتج النهائي
18.
veto_44
08-10-2006, 07:42 AM
اشكرك على ادرس الثاني واهناك على لغتك الواضحه
والجميله موضوعك رائع ومفيد الكل لازم يتابعه لكن
انا عندي سؤال عن a\ لم افهمها جيدا كيف تقوم بعمل
انذار صوتي يعني انا عضعها عندما يقوم المستخدم
للبرنامج بادخال خاطأ ؟؟
بارك الله فيك على المجهود الكبير ةتقبل فائق الاحترام والتقدير
devdaslover
08-10-2006, 11:48 PM
شكرااااااااااااااااااااااااااااااا
swordlord99
08-10-2006, 11:52 PM
جواب سؤال العم فيتو الرهيب , هو ان \a تستعمل في حالة وجود خطا معين , مثلا يمكنك وضعها في جمل if , ولها اكثر من استعمال حسب حاجه المبرمج .
conan2020
08-30-2006, 08:40 AM
كيف اجمع two matrix by pointers
laststar
08-30-2006, 10:24 AM
شرح مبسط و جميل
اتمنى انك تستمر
حتى تعم المنفعه
1000Heart
08-31-2006, 07:43 PM
تسلم أخي وأرجو أن تواصل دروسك المفيدة
oshosh
08-31-2006, 10:52 PM
السلام عليكم
الشرح فعلا مبسط جدا ومفيد بس انا عايزه اعرف الفرق بين السى والسى بلس بلس ولو باختصار شديد لو امكن؟
جزاكم الله خيرا
veto_44
08-31-2006, 11:29 PM
السلام عليكم
الشرح فعلا مبسط جدا ومفيد بس انا عايزه اعرف الفرق بين السى والسى بلس بلس ولو باختصار شديد لو امكن؟
جزاكم الله خيرا
السلام عليكم اخي الكريم الفرق بسيط جدا
تعتبر لغة اليس++ لغة مطورة للسي وانا
اراها اسهل منها في بعض الامور كما ان
السي++ بها امكانيات اكبر هذا بدون الدخول
بالتفاصيل وتقبل تحياتي
aaaal
09-07-2006, 10:38 AM
شكرا على المجهود بس أتمنى استمرار الشرح
الفراولة
11-07-2006, 09:14 AM
يعطيك العافيه على المجهود الرائع والشرح المبسط ..
تحياتي
zakimoulayabdellah
11-07-2006, 04:59 PM
goood friend thank you
الف شكر على هذا الشرح الوافي والمفيد ويعطيك العافية