جدول المحتويات:

كيفية عمل برنامج تكامل رقمي في بايثون: 10 خطوات
كيفية عمل برنامج تكامل رقمي في بايثون: 10 خطوات

فيديو: كيفية عمل برنامج تكامل رقمي في بايثون: 10 خطوات

فيديو: كيفية عمل برنامج تكامل رقمي في بايثون: 10 خطوات
فيديو: اول يوم برمجة Vs اول سنة برمجة 🥲 #برمجة #مبرمج #programming #artificialintelligence 2024, يوليو
Anonim
كيفية عمل برنامج تكامل رقمي في بايثون
كيفية عمل برنامج تكامل رقمي في بايثون

هذا برنامج تعليمي حول كيفية إنشاء وتشغيل برنامج يقوم بتقييم تكاملات محددة باستخدام خوارزمية تكامل عددي. لقد قسمت الخطوات إلى 3 أقسام: فهم الخوارزمية التي سيتم استخدامها لإنشاء البرنامج ، وترميز البرنامج باستخدام لغة برمجة Python ، وتشغيل البرنامج. هذا البرنامج التعليمي مخصص لشخص قد يحتاج إلى إنشاء آلة حاسبة بسرعة لتقييم تكاملات محددة ، أو ربما يحتاج إلى خوارزمية لاستخدامها في برنامج أكبر حجمًا. من المتوقع معرفة التفاضل والتكامل الأساسية ، ولكن تتم مراجعة المعلومات الرياضية ذات الصلة. المعرفة بالبرمجة غير متوقعة ، لكنها مفيدة لأنني أصف بإيجاز فقط كيف تعمل البرمجة في الواقع.

ما سوف تحتاجه:

جهاز كمبيوتر شخصي متصل بالإنترنت

الخطوة 1: فهم الخوارزمية الجزء 1: التكامل المحدد واستخدامه

فهم الخوارزمية الجزء 1: التكامل المحدد واستخدامه
فهم الخوارزمية الجزء 1: التكامل المحدد واستخدامه

سأفترض أنك تعرف قليلاً ما هو التكامل في سياق التفاضل والتكامل الأساسي. التكاملات مهمة لأنها تسمح لك بجمع مصفوفة من القيم مضروبة في طول متناهي الصغر ؛ هذا مفيد في العديد من مجالات المالية ، ونظرية الأعداد ، والفيزياء ، والكيمياء ، بالإضافة إلى العديد من المجالات الأخرى. ومع ذلك ، سيسمح لك هذا البرنامج فقط بحساب المنطقة الواقعة أسفل منحنى لفترة زمنية محدودة ، أو بعبارة أخرى ، لا يقوم بتقييم المشتقات المضادة - يلزم وجود خوارزمية أقوى بكثير لذلك. هذه الخوارزمية مفيدة إذا كنت بحاجة إلى تقييم تكامل محدد في برنامج أكبر مخصص لشيء آخر ، أو إذا كنت تريد التحقق من إجابتك لأي تكاملات محددة يتم تنفيذها يدويًا.

يمثل التكامل الأساسي المحدد المنطقة الواقعة تحت منحنى محدد بواسطة دالة على سبيل المثال و (خ). للحصول على تكامل محدد ، نبحث عن المنطقة الواقعة بين نقطتين (يُشار إليهما أ و ب على التوالي). في الصورة ، المنطقة الفيروزية هي المنطقة التي أشير إليها ، وتظهر أيضًا معادلة تحديد ذلك في تلك المنطقة. الوظيفة الموضحة في الصورة تعسفية.

الخطوة 2: فهم الخوارزمية الجزء 2: التقريب العددي

فهم الخوارزمية الجزء 2: التقريب العددي
فهم الخوارزمية الجزء 2: التقريب العددي

يحتاج الكمبيوتر إلى مجموعة واسعة من التعليمات لحساب تلك المنطقة أسفل وظيفة عشوائية تعمل مع أي وظيفة ، لذا فإن الأساليب التحليلية التي قد تكون على دراية بها لا فائدة منها لأنها خاصة جدًا. إحدى الطرق لحساب التكاملات تقريبًا ، والتي يمكن للكمبيوتر التعامل معها بالفعل ، تتم عن طريق ملء منطقة الاهتمام بكمية محددة من المستطيلات ذات عرض متساوٍ وارتفاع متغير ثم تلخيص جميع مناطق المستطيل. الخصائص الصلبة للمستطيلات ستترك بعض المساحة الكلية دون مساس ، ولهذا السبب يعتبر هذا تقريبيًا ؛ ومع ذلك ، فكلما زاد عدد المستطيلات التي يمكنك حشرها بين الحدود (أ و ب) ، كلما كان التقريب أكثر دقة لأن المناطق التي لم تمسها تصبح أكثر تناثرًا. نظرًا لأن الكمبيوتر سيقوم بالمهمة ، يمكنك تعيين عدد المستطيلات في المنطقة المرغوبة ليكون عددًا كبيرًا جدًا ، مما يجعل التقريب دقيقًا للغاية. في الصورة الداعمة ، تخيل أن كل مستطيل في المنطقة المخصصة له نفس العرض. لقد بذلت قصارى جهدي لجعلها متساوية العرض في Microsoft Paint ، لكنني لم أفعل أفضل وظيفة.

الخطوة 3: فهم الخوارزمية الجزء 3: قاعدة نقطة الوسط

فهم الخوارزمية الجزء 3: قاعدة نقطة الوسط
فهم الخوارزمية الجزء 3: قاعدة نقطة الوسط

تحدد هذه القاعدة كيفية صنع المستطيلات واستخدامها في التقريب. يجب أن يكون لكل مستطيل من مستطيلات "N" عرض متساوٍ ، x ، لكن كل مستطيل ن لا يمكن أن يكون هو نفسه تمامًا: العامل المتغير هو الارتفاع الذي يختلف حسب تقييم الوظيفة عند نقطة معينة. تحصل قاعدة نقطة الوسط على اسمها من حقيقة أنك تقيم ارتفاع كل مستطيل كـ f (x_n) ، حيث "x_n" هي نقطة الوسط الخاصة بكل مستطيل ، كما هو موضّح على يسار أو يمين المستطيل. يشبه استخدام نقطة الوسط تنفيذ المتوسط الذي سيجعل التقريب أكثر دقة مما لو كنت تستخدم اليمين أو اليسار. تلخص الصورة الداعمة لهذه الخطوة كيفية تعريف قاعدة النقطة الوسطى رياضيًا.

الخطوة 4: إنشاء الجزء الأول من البرنامج: تنزيل مترجم / محرر Python

الآن بعد أن فهمت الخوارزمية التي يجب تنفيذها ، فإن الأمر يتعلق بجعل الكمبيوتر يقوم بالحساب نيابة عنك. الخطوة الأولى لإخبار الكمبيوتر بما يجب فعله هي الحصول على الأدوات اللازمة للقيام بذلك. يمكن ترميز هذه الخوارزمية بأي لغة ؛ للتبسيط ، سيتم ترميز هذا البرنامج بلغة Python. لتوجيه جهاز الكمبيوتر الخاص بك لإجراء عمليات باستخدام Python ، ستحتاج إلى محرر يأخذ التعليمات المكتوبة بهذه اللغة والتي سيتم تجميعها بعد ذلك في لغة الآلة التي يمكن لجهاز الكمبيوتر الخاص بك فهمها حتى يتمكن من تنفيذ المهام التي تطلبها من القيام بها. في هذا اليوم وهذا العصر ، عادةً ما يتم دمج المحرر والمترجم ، ولكن هذا ليس هو الحال دائمًا. يمكنك استخدام أي محرر / مترجم تشعر بالراحة معه ، لكنني سأوضح لك كيفية الحصول على مفضلتي الشخصية في Python: Canopy. إذا كان لديك بالفعل محرر / مترجم ، فيمكنك تخطي هذه الخطوات.

  1. انتقل إلى
  2. انقر فوق Download Canopy
  3. انقر فوق زر التنزيل المقابل لنظام التشغيل الخاص بك

    سيبدأ التنزيل تلقائيًا

  4. اتبع تعليمات التقطير بعد بدء ملف التنفيذ
  5. تشغيل البرنامج
  6. انقر فوق "محرر" من القائمة الرئيسية للبرنامج
  7. انقر فوق "إنشاء ملف جديد" في منتصف الشاشة

من هذه النقطة ، سترى نافذة بيضاء فارغة بمؤشر يشبه مستند معالجة الكلمات الأساسي. أنت الآن جاهز لبدء ترميز خوارزمية التكامل العددي لحل التكاملات المحددة. ستحتوي خطوات المتابعة على مقتطف من التعليمات البرمجية التي ستقوم بنسخها وشرح لما يفعله هذا المقتطف للبرنامج ككل.

الخطوة 5: إنشاء البرنامج الجزء 2: استيراد الوظائف وتحديد المتغيرات

إنشاء الجزء الثاني من البرنامج: استيراد الوظائف وتحديد المتغيرات
إنشاء الجزء الثاني من البرنامج: استيراد الوظائف وتحديد المتغيرات

انسخ الكود الموجود في الصورة.

بالنسبة لأي برنامج قد تجد نفسك تقوم بالشفرة ، ستكون هناك متغيرات. المتغير هو اسم يعطى لقيمة سيتم تشغيلها ويمكن أن تتغير. في معظم لغات البرمجة (إن لم يكن كلها) ، يجب عليك تهيئة متغير قبل أن يتمكن البرنامج من إجراء تغييرات عليه. في حالة هذا البرنامج ، قمت بتسمية المتغيرات "N" و "a" و "b". تمثل هذه القيم عدد التكرارات (عدد AKA من المستطيلات) والحد الأدنى والحد الأعلى على التوالي. يمكنك تسمية أي شيء تريده ، ولكن لمطابقة الصيغ الواردة في "فهم الخوارزمية الجزء 3: قاعدة نقطة الوسط" ، فمن الأفضل الاحتفاظ بها كما هي. لاحظ أنه لم يتم تعيينها على قيمة محددة فقط. هذا لأنها مصنوعة من المدخلات التي ، عند تشغيل البرنامج ، يمكن لمستخدم البرنامج تحديد القيمة التي ستكون. يظهر النص بين علامتي الاقتباس ، بعد أمر الإدخال ، عند تشغيل البرنامج لإخبارك بنوع القيمة التي يجب كتابتها. ستلاحظ أيضًا استخدام "int" و "float" قبل تعيينات الإدخال. تخبر هذه المصطلحات الكمبيوتر عن نوع المتغير الذي ستكون هذه القيمة. "int" هو عدد صحيح ، و "float" هو قيمة فاصلة عائمة (أي عشري). يجب أن يكون واضحًا سبب تصنيفها على هذا النحو.

أي نص موجود بعد "#" هو تعليق يسمح للمبرمج باتباع الكود بطريقة إنسانية. لقد قدمت بعض التعليقات في الكود الخاص بي والتي ستقوم بنسخها ، لكن لا تتردد في إضافة أي تعليقات تساعدك على وجه التحديد. البرنامج لن يقرأ أي شيء مع "#" قبله كأمر.

يخبر جزء الكود الذي يقرأ "من استيراد الرياضيات *" البرنامج باستيراد مجموعة من الدوال الرياضية التي يمكن استخدامها دون الحاجة إلى برمجتها بنفسك. "*" تعني فقط "الكل". اقرأ هذا الجزء من التعليمات البرمجية على النحو التالي: من مكتبة الرياضيات ، قم باستيراد جميع الوظائف. يتيح لك هذا استخدام وظائف رياضية مثل الجيب وجيب التمام والسجل و exp ، وما إلى ذلك. يمكن دمج هذه الوظيفة رياضيًا داخل الكود.

الخطوة 6: إنشاء البرنامج الجزء 3: إنشاء دالة للتكامل

إنشاء الجزء 3 من البرنامج: إنشاء وظيفة للتكامل
إنشاء الجزء 3 من البرنامج: إنشاء وظيفة للتكامل

انسخ الكود الموجود في الصورة أسفل الكود السابق.

تحذير: هذا القسم كثيف ، وأريد توضيح بعض الأشياء التي قد تكون محيرة. عند الحديث عن البرمجة ، تظهر كلمة "وظيفة" كثيرًا. يظهر هذا المصطلح أيضًا كثيرًا عندما تتحدث عن الرياضيات. لذا ، من هذه النقطة ، عندما أتحدث عن دالة بمعنى البرمجة ، سأكتب "دالة بايثون" ، وعندما أتحدث عن الوظيفة الرياضية ، سأقول "وظيفة رياضية". في مرحلة ما سنستخدم دالة بايثون كتمثيل للدالة الرياضية المعنية.

هذا المقتطف التالي من التعليمات البرمجية هو قلب البرنامج. هنا ، يتم تعريف دالة Python التي تنفذ خوارزمية التكامل العددي باستخدام قاعدة نقطة الوسط. تقرأ "def Integrate (N، a، b)" على النحو التالي: تعريف دالة تسمى "Integrate" تقبل المتغيرات "N" و "a" و "b" وتعيد المنطقة الواقعة أسفل المنحنى (الوظيفة الرياضية) والتي يتم تعريفها أيضًا ضمن دالة "دمج" Python. يمكنك استدعاء وظيفة Python هذه بأي شيء عندما تقوم بالترميز ، ولكن من المنطقي تسميتها تكامل لأنها وظيفة تدمج بالفعل وظيفة رياضية.

في هذه المرحلة ، يجدر التعليق على كيفية فصل Python بين كتل التعليمات البرمجية. كتلة التعليمات البرمجية هي قسم كامل يؤدي مهمة معينة. ستخصص لغات البرمجة المختلفة طرقًا لتمييز هذه "الكتل". بالنسبة إلى Python ، يتم تمييز الكتلة بمسافات بادئة: كل قسم من أقسام أداء المهام له مسافة بادئة خاصة به ، ويمكن أن تكون هناك كتل ذات مسافة بادئة داخل الكتل الأخرى ذات المسافة البادئة. يمثل هذا المهام ضمن المهام ، ويخبر بشكل أساسي الترتيب الذي يجب تنفيذ التعليمات البرمجية به. في حالة "الدمج" لوظيفة Python المحددة ، يتم وضع مسافة بادئة لكل شيء داخل هذه الوظيفة خارج كتلة واحدة وبالتالي التمييز بين المهام التي سيتم تنفيذها ضمن هذه الوظيفة. هناك أجزاء ذات مسافة بادئة داخل وظيفة Python تؤدي مهامها الخاصة أيضًا. تسير على النحو التالي: يتم تعيين أمر (مهمة) ، يتبع النقطتان الأمر ، وما يفعله الأمر يتم وضع مسافة بادئة أسفله.

مباشرة بعد تحديد وظيفة "دمج" Python ، ستقوم بتعريف دالة Python أخرى تسمى f (x). هذا يمثل الوظيفة الرياضية التي سيتم دمجها. لكل دالة رياضية مختلفة تريد دمجها ، سيتعين عليك الانتقال إلى سطر البرنامج هذا لتغييره (على عكس المتغيرات التي يتم تحديدها عند تشغيل البرنامج). سيكون لكل دالة في Python قيمة إرجاع ، وهذا ما تعيده الوظيفة عندما ترميها بقيمة. في هذه الحالة ، القيمة التي يتم طرحها هي "x" ، وسيأخذ مصطلح "x" هذا قيمة أي شيء ترميه - إنها قيمة مؤقتة.

بعد ذلك ، تعمل حلقة for-loop كالجمع المحدد في الصيغ في قسم "فهم الخوارزمية" في هذا البرنامج التعليمي. يتطلب هذا الجمع متغيرين آخرين ، أحدهما سيكون بمثابة القيمة المرتجعة لوظيفة "دمج" Python بأكملها. قبل حلقة for-loop ، قمت بتعيين هذه المتغيرات على أنها "value" و "value2". تتمثل مهمة الحلقة for-loop في التكرار عبر نطاق من القيم لمتغير معين ، والذي يمكن تحديده بسهولة داخل الأمر for-loop ؛ في هذه الحالة ، هذا المتغير هو "n". النطاق الذي يحدث التكرار له هو 1 إلى N + 1. يجب أن تلاحظ أن المجموع المحدد في الصيغ المذكورة أعلاه يتراوح فقط من 1 إلى N. نحن نحدده بهذه الطريقة لأن لغة Python تحسب كل قيمة متكررة تبدأ من الصفر ، لذلك يتعين علينا بشكل أساسي تغيير نطاق القيم لتلائم ما نريده. نطاق. تسمح حلقة for-loop بعد ذلك بجمع كل ارتفاعات المستطيل معًا وتخزين هذه القيمة في المتغير الذي أسميته "القيمة". يظهر هذا في جزء الكود الذي يظهر على النحو التالي: القيمة + = f (a + ((n- (1/2)) * ((b-a) / N))).

من هناك ، يستخدم الجزء التالي من الكود المتغير المسمى "value2" والذي يتم تعيينه بعد ذلك ليكون مجموع كل ارتفاعات كل مستطيل مضروبًا في العرض القياسي لكل مستطيل - هذه هي إجابتنا النهائية التي نريدها التي يعرضها برنامجنا ، وبالتالي هي القيمة المعادة لوظيفة "دمج" Python.

الخطوة 7: إنشاء البرنامج الجزء 4: عرض الإجابة

إنشاء جزء البرنامج 4: عرض الإجابة
إنشاء جزء البرنامج 4: عرض الإجابة

انسخ الكود الموجود في الصورة أسفل الكود السابق.

الآن بعد أن أصبح بالإمكان الحصول على الإجابة من خلال وظيفة "دمج" Python ، نريد أن نكون قادرين على عرضها. هذه مجرد مسألة وضع القيم التي أدخلها المستخدم ("N" و "a" و "b") في وظيفة "Integrate" Python وطباعتها على الشاشة. يظهر هذا الأمر في السطر 21 ، وهو حقًا كل ما عليك القيام به لإنهاء هذه الخطوة. الشفرة الموجودة في السطرين 19 و 20 موجودة فقط من أجل "تحسين" إخراج البرنامج بأكمله. يفصل "print (" ……………………… … ")" قسم إدخال البرنامج عن قسم الإخراج ، و "print (" ها هي إجابتك: ")" هي مجرد تسمية ستفعلها الإجابة أن تتم طباعتها بعد هذا السطر من النص.

الخطوة 8: تشغيل البرنامج الجزء 1: تشغيل البرنامج كما هو

تشغيل البرنامج الجزء 1: تشغيل البرنامج كما هو
تشغيل البرنامج الجزء 1: تشغيل البرنامج كما هو

إذا كنت لا تستخدم Canopy ، فربما لا تحتاج حتى إلى اتباع هذه الخطوة على الإطلاق وقد يتطلب تشغيل البرنامج إجراءات مختلفة. في Canopy ، قبل أن تتمكن من تشغيل البرنامج ، ستحتاج إلى حفظه. نوع الملف لبرنامج Python هو ملف.py - يتم حفظه تلقائيًا بهذا الشكل. اختر المكان الذي تريد حفظ الملف فيه ، ثم ستتمكن من تشغيل البرنامج.

تشغيل البرنامج:

  1. اضغط على الزر الأخضر الذي يشبه "زر التشغيل" الموجود على شريط الأدوات أعلى المكان الذي يظهر فيه اسم الملف (راجع الصورة).
  2. سيتم تشغيل البرنامج بعد ذلك في الشاشة السفلية للمحرر والتي تُعرف باسم بيئة تحليل بيانات Canopy. بافتراض أنك قمت بنسخ المطالبات كما كتبتها ، يجب أن ترى في الجزء السفلي من بيئة تحليل بيانات Canopy المطالبة: "أدخل عدد المرات التي تريد جمعها (مرات أكثر = أكثر دقة):." (راجع الصورة)
  3. أدخل قيمة لعدد المرات التي تريد إجراء التكرار فيها ، أي 10000 (عدد المستطيلات التي تريد دفعها إلى منطقتك) ، ثم اضغط على Enter.
  4. ستظهر المزيد من المطالبات مع العبارات التي يجب أن تكون مطالبات الإدخال المألوفة التي قمت بترميزها في البرنامج في الخطوة 5. قم بتعبئتها بشكل مناسب تمامًا كما في الرقم 3 أعلاه.
  5. يجب تقييم التكامل ، ويجب أن تظهر النتيجة.

إذا قمت بترميز البرنامج كما هو موضح في الصور السابقة ، فقد قمت فقط بدمج f (x) = x ^ 2 في بعض الحدود. من السهل تقييم تكامل x ^ 2 يدويًا ، لذلك يجب عليك التحقق والتأكد من أن البرنامج قدم إجابة قريبة جدًا للقيمة التحليلية الصحيحة التي تم تحديدها يدويًا. عندما أقوم بتشغيل البرنامج بالقيم N = 10000 و a = 0 و b = 10 ، أحصل على الإجابة 333.33333249999964. الإجابة التحليلية الصحيحة هي 333.333. هذا دقيق وسريع بشكل لا يصدق. لقد ضغطت بشكل أساسي 10000 مستطيل بين 0 و 10 على المحور x واستخدمتها لتقريب المساحة الواقعة أسفل المنحنى x ^ 2!

الخطوة 9: تشغيل البرنامج الجزء 2: تكامل وظائف رياضية أخرى

تشغيل الجزء الثاني من البرنامج: تكامل وظائف رياضية أخرى
تشغيل الجزء الثاني من البرنامج: تكامل وظائف رياضية أخرى

في الخطوة السابقة ، إذا كنت تتابع بأمانة ، فقد دمجت f (x) = x ^ 2. ليست هذه هي الوظيفة الرياضية الوحيدة التي يمكن لهذا البرنامج دمجها. تذكر من الخطوة 5 أنك قمت باستيراد مجموعة مكتبة الرياضيات لوظائف Python إلى البرنامج. يتيح لك ذلك استخدام وظائف رياضية أكثر تعقيدًا يمكن دمجها. دعونا نعطي واحدة فرصة. بالطبع ، يمكنك استخدام أي دالة تريدها ، لكنني سأوضح مدى دقة هذه الشفرة من خلال دمج دالة رياضية معينة تنتج قيمة معروفة جيدًا عند دمجها في نطاق معين. هذه الوظيفة هي f (x) = Sin [x]. يتم عرض هذه الوظيفة الرياضية في الصورة المصاحبة الأولى ، المرسومة من 0 إلى 2 درجة ، ومنطقة الاهتمام مظللة باللون الفيروزي. هناك قدر مساوٍ من المساحة الموجبة حيث توجد مساحة سالبة في هذه الفترة ، لذا إذا جمعت المساحة الكلية ، يجب أن تحصل على صفر. دعنا نرى ما إذا كان هذا قد حدث بالفعل:

وضع الدالة الرياضية f (x) = Sin [x] في البرنامج:

  1. قبل تشغيل البرنامج مرة أخرى ، تحت التعليق "#type your function after return" اكتب: sin (x) حيث x ** 2 موجود حاليًا. (راجع الصورة).
  2. قم بتشغيل البرنامج بالضغط على زر التشغيل الأخضر مرة أخرى.
  3. اكتب 10000 للقيمة N (كم مرة تريد جمعها).
  4. ضع "0" في الحد الأدنى.
  5. ضع 6.2832 في الحد العلوي (حوالي 2 درجة).
  6. انظر إلى القيمة التي تحصل عليها.

عندما فعلت هذا ، انتهى بي الأمر بالحصول على قيمة 1.079e-10: هذا يساوي.0000000001079 ، وهو قريب جدًا من الصفر ، لذلك يبدو أنه دقيق ، ويظهر أن الخوارزمية تتعامل بشكل مناسب مع المنطقة السلبية.

الخطوة 10: تشغيل البرنامج الجزء 3: توسيع البرنامج

في هذه المرحلة تكون قد انتهيت: لديك خوارزمية متكاملة ومحددة عاملة ومشفرة في Python تعمل بسلاسة وتقدم إجابات دقيقة للغاية. ومع ذلك ، يمكن تحسين هذا البرنامج. أنا لست مبرمجًا ، ولدي خبرة قليلة مع بايثون. في الواقع ، كان عليّ تحديث نفسي باستخدام Python لإكمال هذا البرنامج التعليمي ، ولكن هذا من شأنه أن يمنحك الثقة في أن Python هي لغة سهلة التعلم. نقطتي هي أنه يمكنك التوسع في هذا البرنامج بجعله أكثر كفاءة ، وربما تنفيذ بعض واجهة المستخدم الرسومية ، وجعله أكثر سهولة في الاستخدام.

أفكاري في توسيع البرنامج:

  • قم بتنفيذ واجهة مستخدم رسومية تسمح لك بتشغيل البرنامج دون استخدام بيئة تحليل البيانات التفاعلية Canopy
  • اجعلها بحيث لا يلزم إدخال الوظيفة الرياضية المراد دمجها داخل البرنامج ، ولكن يمكن إدخالها بعد تشغيل البرنامج (كنت أحاول في البداية القيام بذلك ، لكن لم أستطع معرفة ذلك).
  • قم بتعريف دالة "دمج" Python بحيث تأخذ الدالة f (x) كما هو الحال مع تعريف الدالة f (x) بداخلها.

هذه مجرد أمثلة على مجالات التحسين ، لكنني أضمن أن هناك العديد من المجالات الأخرى التي يمكن تحسينها. لذلك أترك هذه الخطوة كمثال على عيوب هذا البرنامج وربما تمرينًا لأي شخص يريد تحسين البرنامج بشكل أكبر.

موصى به: