الحلقة الرابعة في تعلم C++: الدوال (Functions)
#برمجة
مقدمة
في هذه الحلقة سنتعلم واحدة من أهم أفكار البرمجة في C++ وهي الدوال Functions.
الدوال تعتبر أساس بناء أي برنامج احترافي، لأنها تساعدك على تقسيم البرنامج إلى أجزاء صغيرة، وكل جزء يقوم بمهمة محددة.
بدلاً من كتابة نفس الكود أكثر من مرة، نكتب دالة ونستخدمها وقت ما نريد.
ما هي الدالة؟
الدالة هي مجموعة أوامر داخل البرنامج تقوم بتنفيذ مهمة معينة.
مثال بسيط:
- دالة تجمع رقمين
- دالة تطبع اسم
- دالة تتحقق من رقم إذا كان زوجي أو فردي
مثال من الحياة الواقعية
تخيل أنك في مطبخ:
- لديك دالة اسمها "تحضير القهوة"
- ودالة اسمها "غلي الماء"
- ودالة اسمها "تحريك السكر"
كل مرة تريد قهوة، تنفذ هذه الدوال بدون إعادة شرح كل خطوة من البداية.
شكل الدالة في C++
returnType functionName(parameters)
{
// code
}
أول دالة بسيطة
#include <iostream>
using namespace std;
void hello()
{
cout << "Hello World";
}
int main()
{
hello();
return 0;
}
الشرح:
- void تعني أن الدالة لا ترجع قيمة
- hello اسم الدالة
- عند استدعائها يتم تنفيذ الكود داخلها
الدوال التي ترجع قيمة
int add()
{
return 5 + 3;
}
هذه الدالة ترجع قيمة رقمية.
مثال عملي
#include <iostream>
using namespace std;
int add()
{
return 10 + 20;
}
int main()
{
cout << add();
return 0;
}
الناتج:
30
الدوال مع المعاملات (Parameters)
المعاملات تعني أننا نرسل بيانات إلى الدالة.
int sum(int a, int b)
{
return a + b;
}
مثال عملي
#include <iostream>
using namespace std;
int sum(int a, int b)
{
return a + b;
}
int main()
{
cout << sum(5, 7);
}
الناتج:
12
مثال إدخال من المستخدم
#include <iostream>
using namespace std;
int sum(int a, int b)
{
return a + b;
}
int main()
{
int x, y;
cin >> x >> y;
cout << sum(x, y);
}
دالة التحقق من الزوجي والفردي
bool isEven(int num)
{
return num % 2 == 0;
}
مثال استخدامها
#include <iostream>
using namespace std;
bool isEven(int num)
{
return num % 2 == 0;
}
int main()
{
int n;
cin >> n;
if(isEven(n))
cout << "Even";
else
cout << "Odd";
}
الدوال داخل الدوال
يمكن استدعاء دالة داخل دالة أخرى:
int multiply(int a, int b)
{
return a * b;
}
int square(int x)
{
return multiply(x, x);
}
مثال آلة حاسبة باستخدام الدوال
#include <iostream>
using namespace std;
int add(int a, int b) { return a + b; }
int sub(int a, int b) { return a - b; }
int mul(int a, int b) { return a * b; }
int divi(int a, int b) { return a / b; }
int main()
{
int a, b;
char op;
cin >> a >> op >> b;
if(op == '+')
cout << add(a, b);
else if(op == '-')
cout << sub(a, b);
else if(op == '*')
cout << mul(a, b);
else if(op == '/')
cout << divi(a, b);
return 0;
}
لماذا الدوال مهمة؟
الدوال تساعدك على:
- تقليل تكرار الكود
- تنظيم البرنامج
- سهولة التعديل
- بناء مشاريع كبيرة بسهولة
أخطاء شائعة
❌ نسيان return في الدوال التي ترجع قيمة
❌ عدم تمرير القيم بشكل صحيح
❌ تكرار نفس الكود بدلاً من استخدام دالة
تمارين
- اكتب دالة تطبع اسمك
- اكتب دالة تجمع 3 أرقام
- اكتب دالة تعيد أكبر رقم بين رقمين
- اصنع آلة حاسبة باستخدام الدوال
ملخص الحلقة الرابعة
في هذه الحلقة تعلمنا:
- ما هي الدوال
- أنواع الدوال
- return
- parameters
- أمثلة عملية قوية
في الحلقة الخامسة سنتعلم:
🔥 المصفوفات Arrays
وهي طريقة لتخزين مجموعة كبيرة من البيانات داخل متغير واحد.

تعليقات
إرسال تعليق