في لغة Dart، تُستخدم العوامل الحسابية لإجراء العمليات الرياضية الأساسية مثل الجمع، الطرح، الضرب، القسمة، وغيرها.
هذه العوامل تعمل مع أنواع البيانات الرقمية مثل int
و double
.
1. العوامل الحسابية الأساسية
العامل | الوصف | مثال | الناتج |
---|---|---|---|
+ | جمع رقمين | 5 + 3 | 8 |
- | طرح رقمين | 10 - 4 | 6 |
* | ضرب رقمين | 7 * 2 | 14 |
/ | قسمة رقمين (تعطي double ) | 10 / 2 | 5.0 |
~/ | قسمة صحيحة (تعطي int ) | 10 ~/ 3 | 3 |
% | باقي القسمة (المودولو) | 10 % 3 | 1 |
أمثلة عملية:
void main() {
int a = 10;
int b = 3;
print(a + b); // 13 (جمع)
print(a - b); // 7 (طرح)
print(a * b); // 30 (ضرب)
print(a / b); // 3.333... (قسمة عادية)
print(a ~/ b); // 3 (قسمة صحيحة)
print(a % b); // 1 (باقي القسمة)
}
Dart2. العوامل التزايدية والتناقصية (Increment & Decrement)
هما العوامل التي تستخدم لزيادة أو إنقاص قيمة المتغير بعدد ثابت (غالبًا 1).
النقصان: --
الزيادة: ++
✅ أنواعها:
يوجد نوعان لكل منهما:
- الزيادة/النقصان قبل (Prefix):
++x
أو--x
- الزيادة/النقصان بعد (Postfix):
x++
أوx--
العامل | الوصف | مثال | الناتج |
---|---|---|---|
++var | زيادة قيمة المتغير قبل استخدامه | ++x | x + 1 |
var++ | زيادة قيمة المتغير بعد استخدامه | x++ | x (ثم يزيد لاحقًا) |
--var | إنقاص قيمة المتغير قبل استخدامه | --x | x - 1 |
var-- | إنقاص قيمة المتغير بعد استخدامه | x-- | x (ثم ينقص لاحقًا) |
void main() {
int x = 5;
print(++x); // 6 (يزيد أولًا ثم يطبع)
print(x++); // 6 (يطبع أولًا ثم يزيد لاحقًا)
print(x); // 7 (القيمة بعد الزيادة)
print(--x); // 6 (ينقص أولًا ثم يطبع)
print(x--); // 6 (يطبع أولًا ثم ينقص لاحقًا)
print(x); // 5 (القيمة بعد التنقيص)
}
Dart3. العوامل المركبة (Compound Assignment Operators)
تجمع بين العملية الحسابية والتعيين في خطوة واحدة.
العامل | الوصف | مثال | المعنى |
---|---|---|---|
+= | جمع ثم تعيين | x += 3 | x = x + 3 |
-= | طرح ثم تعيين | x -= 2 | x = x - 2 |
*= | ضرب ثم تعيين | x *= 4 | x = x * 4 |
/= | قسمة ثم تعيين (double ) | x /= 2 | x = x / 2 |
~/= | قسمة صحيحة ثم تعيين | x ~/= 3 | x = x ~/ 3 |
%= | باقي القسمة ثم تعيين | x %= 3 | x = x % 3 |
أمثلة:
void main() {
int num = 10;
num += 5; // num = num + 5 → 15
print(num); // 15
num ~/= 3; // num = num ~/ 3 → 5
print(num); // 5
num %= 2; // num = num % 2 → 1
print(num); // 1
}
Dart4. أمثلة تطبيقية على العمليات الحسابية
مثال 1: حساب متوسط عددين
void main() {
double num1 = 15.5;
double num2 = 20.3;
double average = (num1 + num2) / 2;
print("المتوسط هو: $average"); // 17.9
}
Dartمثال 2: التحويل من فهرنهايت إلى مئوية
void main() {
double fahrenheit = 77;
double celsius = (fahrenheit - 32) * 5 / 9;
print("$fahrenheit°F = ${celsius.toStringAsFixed(1)}°C"); // 77°F = 25.0°C
}
Dartمثال 3: حساب باقي القسمة (لتحديد الأرقام الزوجية والفردية)
void main() {
int number = 7;
if (number % 2 == 0) {
print("العدد زوجي");
} else {
print("العدد فردي"); // هذا ما سيتم طباعته
}
}
Dartالخلاصة:
العملية | العامل | مثال | الناتج |
---|---|---|---|
الجمع | + | 5 + 3 | 8 |
الطرح | - | 10 - 4 | 6 |
الضرب | * | 7 * 2 | 14 |
القسمة العادية | / | 10 / 3 | 3.333... |
القسمة الصحيحة | ~/ | 10 ~/ 3 | 3 |
باقي القسمة | % | 10 % 3 | 1 |
الزيادة المسبقة | ++x | int x=5; print(++x); | 6 |
الزيادة اللاحقة | x++ | int x=5; print(x++); | 5 (ثم يصبح 6 ) |
التنقيص المسبق | --x | int x=5; print(--x); | 4 |
التنقيص اللاحق | x-- | int x=5; print(x--); | 5 (ثم يصبح 4 ) |
تُستخدم هذه العوامل بكثرة في البرمجة لحساب القيم، تحديث المتغيرات، ومعالجة البيانات الرياضية.