شرح العمليات الحسابية (Arithmetic Operators) في Dart
في لغة Dart، توفر العمليات الحسابية (Arithmetic Operators) أدوات لمعالجة الأرقام وإجراء العمليات الرياضية عليها. تشمل هذه العمليات: الجمع، الطرح، الضرب، القسمة، الباقي، والقسمة الصحيحة.
🔹 أنواع العمليات الحسابية في Dart
العملية | الرمز | الوصف |
---|---|---|
الجمع | + | جمع رقمين |
الطرح | - | طرح رقم من آخر |
الضرب | * | ضرب رقمين |
القسمة العشرية | / | قسمة رقم على آخر وإرجاع نتيجة عشرية |
القسمة الصحيحة | ~/ | قسمة رقم على آخر وإرجاع نتيجة عدد صحيح |
باقي القسمة | % | إرجاع باقي القسمة بين رقمين |
🔹 1. عملية الجمع +
تُستخدم لإضافة رقمين معًا.
✅ مثال:
dartCopyEditvoid main() {
int a = 10;
int b = 5;
int sum = a + b;
print("نتيجة الجمع: $sum"); // 15
}
🔹 2. عملية الطرح -
تُستخدم لطرح رقم من آخر.
✅ مثال:
dartCopyEditvoid main() {
int a = 20;
int b = 8;
int result = a - b;
print("نتيجة الطرح: $result"); // 12
}
🔹 3. عملية الضرب *
تُستخدم لضرب رقمين معًا.
✅ مثال:
dartCopyEditvoid main() {
int a = 7;
int b = 3;
int product = a * b;
print("نتيجة الضرب: $product"); // 21
}
🔹 4. عملية القسمة /
(ترجع عددًا عشريًا)
تُستخدم لقسمة رقم على آخر وإرجاع عدد عشري (double
) حتى لو كان الناتج عددًا صحيحًا.
✅ مثال:
dartCopyEditvoid main() {
int a = 10;
int b = 3;
double division = a / b;
print("نتيجة القسمة: $division"); // 3.3333333333333335
}
🔹 5. عملية القسمة الصحيحة ~/
تُستخدم لقسمة رقم على آخر مع إرجاع عدد صحيح (int
) فقط، دون الأجزاء العشرية.
✅ مثال:
dartCopyEditvoid main() {
int a = 10;
int b = 3;
int result = a ~/ b;
print("نتيجة القسمة الصحيحة: $result"); // 3
}
📌 ملاحظة: يتم حذف الجزء العشري بدون تقريب.
🔹 6. عملية باقي القسمة %
تُستخدم لإيجاد باقي القسمة بين رقمين.
✅ مثال:
dartCopyEditvoid main() {
int a = 10;
int b = 3;
int remainder = a % b;
print("باقي القسمة: $remainder"); // 1
}
📌 ملاحظة: إذا كان العدد الأول مضاعفًا كاملاً للعدد الثاني، فسيكون باقي القسمة 0
.
🔹 الجمع بين العمليات الحسابية
يمكن استخدام أكثر من عملية حسابية في تعبير واحد.
✅ مثال:
dartCopyEditvoid main() {
int a = 10;
int b = 5;
int c = 2;
int result = (a + b) * c - 4 ~/ 2;
print("النتيجة النهائية: $result"); // 28
}
📌 ملاحظة: Dart تتبع أولوية العمليات الحسابية مثل الرياضيات:
- الأقواس
()
- الضرب
*
والقسمة/
والقسمة الصحيحة~/
وباقي القسمة%
- الجمع
+
والطرح-
🔹 استخدام العمليات الحسابية مع المتغيرات غير الصحيحة (double
)
✅ مثال:
dartCopyEditvoid main() {
double price = 19.99;
double discount = 5.5;
double finalPrice = price - discount;
print("السعر بعد الخصم: $finalPrice"); // 14.49
}
🔹 استخدام العمليات مع النصوص (String
)
يمكن استخدام +
لدمج النصوص.
✅ مثال:
dartCopyEditvoid main() {
String firstName = "ياسين";
String lastName = "أحمد";
String fullName = firstName + " " + lastName;
print("الاسم الكامل: $fullName"); // "ياسين أحمد"
}
🚀 لكن الأفضل استخدام interpolation ($variable
أو ${expression}
):
dartCopyEditvoid main() {
String firstName = "ياسين";
String lastName = "أحمد";
print("الاسم الكامل: $firstName $lastName");
}
🔹 القيم الكبيرة جدًا والصغيرة جدًا
Dart يمكنها التعامل مع القيم الكبيرة والصغيرة جدًا.
✅ مثال:
dartCopyEditvoid main() {
int bigNumber = 1000000000;
double smallNumber = 0.0000001;
print(bigNumber * smallNumber); // 100.0
}
🔹 العمليات المختصرة (+=
, -=
, *=
, /=
)
تُستخدم العمليات المختصرة لتحديث قيمة المتغير بسرعة.
✅ مثال:
dartCopyEditvoid main() {
int num = 10;
num += 5; // num = num + 5
print(num); // 15
num -= 3; // num = num - 3
print(num); // 12
num *= 2; // num = num * 2
print(num); // 24
num ~/= 4; // num = num ~/ 4
print(num); // 6
}
🔹 ملخص سريع
العملية | الوصف | مثال |
---|---|---|
+ | الجمع | 10 + 5 → 15 |
- | الطرح | 10 - 5 → 5 |
* | الضرب | 10 * 5 → 50 |
/ | القسمة العشرية | 10 / 3 → 3.3333 |
~/ | القسمة الصحيحة | 10 ~/ 3 → 3 |
% | باقي القسمة | 10 % 3 → 1 |
+= | إضافة إلى المتغير | num += 5 |
-= | طرح من المتغير | num -= 3 |
*= | ضرب المتغير | num *= 2 |
/= | قسمة المتغير | num /= 4 |
💡 الخلاصة
- العمليات الحسابية في Dart تشمل: الجمع، الطرح، الضرب، القسمة، القسمة الصحيحة، وباقي القسمة.
- يمكن استخدام العمليات المختصرة (
+=
,-=
,*=
,/=
) لتحديث القيم بسهولة. ~/
تعطي قسمة صحيحة بدون جزء عشري.- العمليات الحسابية تتبع أولوية العمليات الرياضية المعتادة.
🚀 الآن لديك فهم شامل للعمليات الحسابية في Dart! 🎯