تمرين - إجراء عمليات رياضية

مكتمل

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

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

كتابة التعليمات البرمجية لإجراء الجمع والطرح والضرب والقسمة مع الأعداد الصحيحة

  1. حدد كل التعليمات البرمجية التي كتبتها مسبقا في محرر التعليمات البرمجية C # واضغط على Delete أو Backspace لحذفها.

  2. أدخل التعليمات البرمجية التالية في محرر التعليمات البرمجية C#‎:

    int sum = 7 + 5;
    int difference = 7 - 5;
    int product = 7 * 5;
    int quotient = 7 / 5;
    
    Console.WriteLine("Sum: " + sum);
    Console.WriteLine("Difference: " + difference);
    Console.WriteLine("Product: " + product);
    Console.WriteLine("Quotient: " + quotient);
    
  3. تشغيل التعليمات البرمجية. ينبغي أن تشاهد المخرج التالي:

    Sum: 12
    Difference: 2
    Product: 35
    Quotient: 1
    

كما ترى:

  • + هو عامل التشغيل الإضافة
  • - هو عامل تشغيل الطرح
  • * هو عامل تشغيل الضرب
  • / هو عامل تشغيل القسمة

ومع ذلك، قد لا يكون المقتبس الناتج من مثال القسمة هو ما كنت تتوقعه. يتم اقتطاع القيم بعد العشرية من quotient لأنه يتم تعريفها على intأنها ، ولا int يمكن أن تحتوي على قيم بعد الفاصلة العشرية.

إضافة تعليمة برمجية لتنفيذ القسمة باستخدام البيانات العشرية الحرفية

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

  1. احذف الكود من الخطوات السابقة وأدخل الكود التالي في محرر التعليمات البرمجية C #:

    decimal decimalQuotient = 7.0m / 5;
    Console.WriteLine($"Decimal quotient: {decimalQuotient}");
    
    
  2. تشغيل التعليمات البرمجية. ينبغي أن تشاهد المخرج التالي:

    Decimal quotient: 1.4
    

لكي يعمل هذا، يجب أن يكون حاصل العرض (يسار عامل التعيين) من النوع decimalويجب أن يكون واحد على الأقل من الأرقام التي يتم تقسيمها من النوع decimal (يمكن أن يكون decimal كلا الرقمين أيضا من النوع).

فيما يلي مثالان إضافيان يعملان بشكل جيد على قدم المساواة:

decimal decimalQuotient = 7 / 5.0m;
decimal decimalQuotient = 7.0m / 5.0m;

ومع ذلك، لن تعمل الأسطر التالية من التعليمات البرمجية (أو تعطي نتائج غير دقيقة):

int decimalQuotientA = 7 / 5.0m;
int decimalQuotientB = 7.0m / 5;
int decimalQuotientC = 7.0m / 5.0m;
decimal decimalQuotientD = 7 / 5;

إضافة تعليمة برمجية لتقديم نتائج قسمة عدد صحيح

ماذا لو كنت لا تعمل مع القيم الحرفية؟ بمعنى آخر، ماذا لو كنت بحاجة إلى تقسيم متغيرين من النوع int ولكن لا تريد اقتطاع النتيجة؟ في هذه الحالة، يجب تنفيذ نوع بيانات يتم تحويله من int إلى decimal. يعد التحويل نوعًا واحدًا من تحويل البيانات التي يرشد المحول البرمجي إلى التعامل مع قيمة بشكل مؤقت كما لو كانت نوع بيانات مختلفة.

int لإرسال إلى decimal، يمكنك إضافة عامل تشغيل التحويل قبل القيمة. يمكنك استخدام اسم نوع البيانات محاطا بأقواس أمام القيمة لإرسالها. في هذه الحالة، يمكنك إضافة (decimal) قبل المتغيرات first و second.

  1. احذف الكود من الخطوات السابقة وأدخل الكود التالي في محرر التعليمات البرمجية C #:

    int first = 7;
    int second = 5;
    decimal quotient = (decimal)first / (decimal)second;
    Console.WriteLine(quotient);
    
  2. تشغيل التعليمات البرمجية. ينبغي أن تشاهد المخرج التالي:

    1.4
    

إشعار

لقد رأيت ثلاثة استخدامات لعامل تشغيل الأقواس: استدعاء الأسلوب وترتيب العمليات والصب.

كتابة التعليمات البرمجية لتحديد الباقي بعد القسمة الصحيحة

يخبرك عامل تشغيل % المعامل بباقي القسمة int . ما تتعلمه حقًا من هذا هو ما إذا كان أحد الأرقام قابلاً للقسمة على رقم آخر أم لا. ويمكن أن يكون هذا مفيدًا في أثناء عمليات المعالجة الطويلة عند المرور عبر مئات أو آلاف سجلات البيانات وتريد تقديم ملاحظات إلى المستخدم النهائي بعد معالجة كل 100 سجل بيانات.

  1. احذف الكود من الخطوات السابقة وأدخل الكود التالي في محرر التعليمات البرمجية C #:

    Console.WriteLine($"Modulus of 200 / 5 : {200 % 5}");
    Console.WriteLine($"Modulus of 7 / 5 : {7 % 5}");
    
    
  2. تشغيل التعليمات البرمجية. ينبغي أن تشاهد المخرج التالي:

    Modulus of 200 / 5 : 0
    Modulus of 7 / 5 : 2
    

عندما يكون المعامل 0، فهذا يعني أن الأرباح قابلة للقسمة على المقسم.

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

كما تعلمت في التمرين السابق، يمكنك استخدام () الرموز كترتيب عوامل تشغيل العمليات . ومع ذلك، هذه ليست الطريقة الوحيدة لتحديد ترتيب العمليات.

في الرياضيات، PEMDAS هو اختصار يساعد الطلاب على تذكر ترتيب العمليات. الترتيب هو:

  1. Pistheses (كل ما هو داخل القوس يتم تنفيذه أولا)
  2. Exponents
  3. Multiplication وD ivision (من اليسار إلى اليمين)
  4. addition وS ubtraction (من اليسار إلى اليمين)

يتبع C# نفس ترتيب PEMDAS باستثناء الأسس. بينما لا يوجد عامل تشغيل أسي في C#، يمكنك استخدام System.Math.Pow الأسلوب . ستعرض الوحدة النمطية "استدعاء الأساليب من مكتبة فئات .NET Framework باستخدام C#" هذا الأسلوب وغيره.

كتابة التعليمات البرمجية لممارسة ترتيب العمليات في C#‎.

  1. احذف الكود من الخطوات السابقة وأدخل الكود التالي في محرر التعليمات البرمجية C #:

    int value1 = 3 + 4 * 5;
    int value2 = (3 + 4) * 5;
    Console.WriteLine(value1);
    Console.WriteLine(value2);
    

    هنا ترى الفرق عند تنفيذ نفس العمليات بترتيب مختلف.

  2. تشغيل التعليمات البرمجية. ينبغي أن تشاهد المخرج التالي:

    23
    35
    

خلاصة

إليك ما تعلمته حتى الآن حول العمليات الرياضية في C#‎:

  • استخدم عوامل التشغيل مثل +و -*و / لتنفيذ العمليات الرياضية الأساسية.
  • سيؤدي تقسيم قيمتين int إلى اقتطاع أي قيم بعد الفاصلة العشرية. للاحتفاظ بالقيم بعد الفاصلة العشرية، تحتاج إلى تحويل المقسوم أو الأرباح (أو كليهما) من int إلى رقم نقطة عائمة مثل decimal أولا، ثم يجب أن يكون حاصل الاقتباس من نفس نوع النقطة العائمة أيضا لتجنب الاقتطاع.
  • تنفيذ عملية تحويل لمعالجة قيمة بشكل مؤقت كما لو كانت نوع بيانات مختلفًا.
  • % استخدم عامل التشغيل لالتقاط الباقي بعد القسمة.
  • وسيتبع ترتيب العمليات قواعد الاختصار PEMDAS.