loader image
تخطى إلى المحتوى الرئيسي
متطلبات الإكمال

الهدف:

الهدف من هذا الدرس هو تقديم المفاهيم الأساسية المتعلقة بصياغة ومعاني لغة البرمجة عالية المستوى مثل   C++. فَهمُ هذه المفاهيم يساعدنا على كتابة برامجَ ذاتِ جودةٍ عاليةٍ وخاليةٍ من الأخطاء.

مقدمة:

تعتبر البرمجةُ العمودَ الفِقَريَّ لتطويرِ البرمجيات، وتتيح لنا تحويلَ الأفكارِ إلى واقعٍ عبر سلسلةٍ من التعليمات المنطقيّةِ.

 إن تعلّمَ صياغةِ البرمجةِ، والتحكمَ في بنيتها يعتبرُ الخطوةَ الأولى نحوَ إتقانِ هذه المهارةِ التِّقنيّةِ الهامّةِ.

 لغات البرمجة عالية المستوى، مثل C++، مصممة؛ لتكون قريبةً من الفهم البشري، حيث تُحوّل عبرَ عملية الترجمة إلى لغة الآلة التي تفهمها الحواسيب.

أساسيات الصياغة في C++ :

التعليقات: تعتبر التعليقات جزءًا هامًّا من الصياغة الذي يساهم في توثيق الأكواد البرمجيّة؛ بحيثُ تَظَلُّ واضحةً ومفهومةً للمبرمجين الآخرين الذين قد يحتاجون لإجراء تعديلاٍت أو تطويراتٍ لاحقًا.

 هناك نوعان أساسيان من التعليقات  في ++C :

// هذا تعليق لسطر واحد
/*
 
وهذا تعليق لعدة أسطر
 
يتم تجاهله من قبل المترجم
*/

 

توجيهات المعالج المسبق: هذه توجيهات يُصادفها المترجم في بداية العملية، وتستخدم بشكل رئيسٍ؛ لإدراج المكتبات الخارجية أو لتعريف الرموز الثابتة:

#include <iostream>  // لإجراء عمليات والإدخال والإخراج

الدالّة الرئيسة  (main) :  تعتبر المكون الأساسيّ لأي برنامج C++، حيث يبدأ التنفيذ منها.

يجب أن يكون لكلِّ برنامج دالّةٌ رئيسةٌ واحدة فقط:

int main() {
    // الكود هنا
    return 0;
}

الأقواس {} تُستخدم لتعريف كتلةٍ برمجية، بينما تعمل الفاصلة المنقوطة (;)على تحديد نهاية التعليمات.

قواعد الكتابة:

المتغيرات وعملية الإعلان عنها:

المتغيرات هي مواقع ذاكرة تستخدم لتخزين البيانات. في C++ يجب تحديد نوع البيانات أثناء الإعلان عن المتغير.

 

int age; // متغير لتخزين الأعداد الصحيحة
float salary; //
متغير لتخزين الأعداد العشرية
char initial; //
متغير لتخزين حرف واحد

المشغلات:

المشغلات: هي الرموز التي تُستخدم لتنفيذ العمليات الحسابية، أو إعادة تخصيص القيم، أو دمج الشروط.

  • المشغلات الحسابيات (+, -, , /, %):  تُستخدم لإجراء العمليات الحسابية الأساسية.
  • مشغلات التخصيص (=, +=, -=): تُستخدم لتعيين قيمةٍ لِمُتغيّر.
  • مشغلات المقارنة (==, !=, <, >): تُستخدم لمقارنة القيم.

مثال عملي:

 

دعونا نكتب برنامجًا بسيطًا يقوم بجمع رقمين وإظهار الناتج:

 

 

#include <iostream>
using namespace std;

int main() {


    int num1, num2, sum;
   
    cout << "
أدخل الرقم الأول: ";
    cin >> num1; //
قراءة الرقم الأول
   
    cout << "
أدخل الرقم الثاني: ";
    cin >> num2; //
قراءة الرقم الثاني
   
    sum = num1 + num2; //
جمع الرقمين
   
    cout << "
الناتج هو: " << sum;

    return 0;


}

التفصيل:

  •  using namespace std; يُتيح لنا استخدام كافة عناصر المكتبة القياسية بدون الحاجة لتكرار    std::   في كل مرة.
  •  cin تُستخدم لقراءة إدخال المستخدم.
  • يتم تخزين الأرقام المدخلة في متغيرات num1  وnum2  .
  • يتم جمع الأرقام وتخزين النتيجة في sum، والتي يتم طبعها لاحقًا.

الأخطاء الشائعة وكيفية تجنبها:

  • نسيان العلامات الإنهائية: مثل الفاصلة المنقوطة (;) تعدّ من أكثر الأخطاء الشائعة.
  • التوافق بين أنواع البيانات: مثل محاولةِ تخزين قيمةٍ عشريّة في متغيّرٍ صحيحٍ.
  • الأقواس المفقودة :تأكد دائماً من أنّ كلّ فتحٍ لقوسٍ يليه إغلاقٌ مناسب.

تمرينات وواجبات منزلية:

  • التمرين 1: كتابة برنامج يَطلب من المستخدم إدخالَ اسمهِ، ويقوم بطباعته مع رسالة ترحيب.
  • التمرين 2: إيجاد وتصحيح الأخطاء في برنامج يقوم بحسابِ المتوسّط الحسابي لثلاثة أعداد.
  • إجراء أيةِ تعديلاتٍ محتمَلةٍ على البرامج؛ لاستكشاف بعض الأخطاء العملية أكثرَ، وتحسين الجودة.

 

من خلال هذا الدرس نأمل أن يكون لديك الآن فهمٌ أعمقُ لكيفيّةِ كتابة برامج باستخدام C++ بصورة صحيحة وفقًا لبنيةِ الصياغة ومعانيها. هذا الدرس هو بداية المشوار نحو تعلم البرمجة بشكل احترافيٍّ، حيث تقدم لك الأساسيات التي ستحتاج إليها فيما بعدُ لتطويرِ برامجَ أكثرَ تعقيدًا.