تنفيذ العمليات الرياضية

مكتمل

نصيحة

راجع علامة التبويب النص والصور لمزيد من التفاصيل!

أجهزة الكمبيوتر في جوهرها هي حاسبات سريعة بشكل لا يصدق. يدعم C# جميع العمليات الحسابية القياسية التي تتوقعها، ما يسمح لك بإجراء العمليات الحسابية وحفظ النتائج في المتغيرات.

عوامل التشغيل الحسابية

تستخدم C# الرموز القياسية للرياضيات الأساسية:

المشغل فعل مثَال النتيجة
+ جمع 10 + 3 13
- الطرح 10 - 3 7
* Multiplication 10 * 3 30
/ القسم 10 / 3 3 (قسمة عدد صحيح)
% المعامل (الباقي) 10 % 3 1

يمكنك محاولة تشغيل هذه التعليمة البرمجية بنفسك في محرر التعليمات البرمجية C#‎.

فهم المعامل (%)

يقوم عامل تشغيل % المعامل بإرجاع كل ما تبقى بعد القسمة. من المفيد التحقق مما إذا كان الرقم يقسم بالتساوي:

Console.WriteLine(10 % 2);   // Output: 0 (10 is even)
Console.WriteLine(11 % 2);   // Output: 1 (11 is odd)

ترتيب العمليات

يتبع C# الترتيب الحسابي القياسي للعمليات (PEMDAS): الأقواس، ثم الضرب/القسمة، ثم الجمع/الطرح. استخدم الأقواس للتحكم في الترتيب:

int standard = 2 + 3 * 4;      // Multiplication first: 14
int forced = (2 + 3) * 4;      // Parentheses first: 20

عوامل تشغيل التعيين المركب

يتمثل النمط الشائع في تحديث متغير باستخدام قيمته الخاصة - مثل الإضافة إلى درجة أو طرح من رصيد. لدى C# عوامل تشغيل مختصرة لهذا:

int score = 50;
score = score + 10;    // Standard way: score is 60
score += 10;           // Shorthand: score is 70

تعمل نفس الاختصارات لعمليات أخرى:

المشغل المعنى مثَال النتيجة (بدءا من 10)
+= إضافة وتعيين x += 5 15
-= طرح وتعيين x -= 5 5
*= الضرب والتعيين x *= 5 50
/= القسمة والتعيين x /= 5 2

عوامل التشغيل التزايدية والتناقص

لإضافة أو طرح 1، تحتوي C# على عوامل تشغيل أقصر -++ و --:

int count = 5;
count++;                       // Same as count = count + 1
Console.WriteLine(count);      // Output: 6

count--;                       // Same as count = count - 1
Console.WriteLine(count);      // Output: 5

مسائل الموقف: الزيادة المسبقة مقابل الزيادة اللاحقة

++ تتصرف عوامل التشغيل و -- بشكل مختلف اعتمادا على ما إذا كانت تظهر قبل المتغير أو بعده:

  • ما بعد الزيادة (value++): يستخدم القيمة الحالية أولا، ثم الزيادات
  • الزيادة المسبقة (++value): الزيادات أولا، ثم تستخدم القيمة الجديدة
int a = 5;
Console.WriteLine(a++);   // Output: 5 (uses old value, then increments)
Console.WriteLine(a);     // Output: 6 (a was incremented)

int b = 5;
Console.WriteLine(++b);   // Output: 6 (increments first, then uses new value)
Console.WriteLine(b);     // Output: 6

تنطبق نفس القواعد على -- (التناقص).

القسمة مع الأعداد الصحيحة مقابل المنازل العشرية

عند تقسيم عددين صحيحين، تقوم C# باقتطاع (إسقاط) الجزء العشري:

int result = 7 / 2;
Console.WriteLine(result);     // Output: 3 (not 3.5)

للاحتفاظ بالالأرقام العشرية، يجب أن يكون رقم واحد على الأقل من الأرقام من النوع العشري:

decimal result = 7m / 2m;
Console.WriteLine(result);     // Output: 3.5

هذا هو السبب في أن اختيار نوع البيانات الصحيح مهم لحساباتك. في القسم التالي، ستتعلم كيفية التحويل بين الأنواع عندما تحتاج إلى ذلك.