Infix Expressions VS Postfix Expressions ، وكيفية بناء آلة حاسبة JavaScript أفضل

إذا كنت ترغب في جعل الآلة الحاسبة البسيطة الخاصة بك أكثر ذكاءً ، فهذه المشاركة تناسبك.

قد تسأل ، "ما الخطأ في الآلة الحاسبة البسيطة." حسنًا ، قد تقوم بجميع العمليات بشكل صحيح ، لكن التسلسل الذي تقوم به ربما يكون خاطئًا.

تحتوي الآلة الحاسبة البسيطة على أربع عمليات فقط: الجمع والطرح والقسمة والضرب. ربما درس الكثير منا في المدرسة الثانوية حول أسبقية العوامل: القسمة والضرب لهما نفس الأولوية ، ولهما أولوية أعلى من الجمع والطرح ، اللذان لهما نفس الأولوية.

يمكن العثور على ملخص سريع لأسبقية المشغل هنا: //www.math.utah.edu/online/1010/precedence/.

السبب في أنني أؤكد على أسبقية المشغل هو أن الآلة الحاسبة البسيطة تؤدي معظم الحسابات بشكل خاطئ. على سبيل المثال ، يجب أن تكون 1 + 2x3 مساوية لـ 7 وفقًا لآلة حاسبة عادية ، لكن الآلة الحاسبة البسيطة تعطي نتيجة 9.

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

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

بكلمات بسيطة ، التعبيرات الحسابية التي نفهمها هي تعبيرات Infix والتعبيرات الحسابية التي يفهمها الكمبيوتر هي تعبيرات Postfix.

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

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

الآن يجب أن تفكر في كيفية تحويل تعبير infix الذي أدخله المستخدم إلى تعبير postfix. هناك خوارزمية تحول تعبير infix إلى تعبير postfix يمكن العثور عليه هنا .

إليك ما تبدو عليه هذه العملية:

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

في النهاية ، يكون الدافع الأساسي لتحويل تعبير infix إلى تعبير postfix هو الحفاظ على أسبقية العوامل بينما يقوم الكمبيوتر بتقييم التعبير.

تحقق من الآلة الحاسبة التي تعمل بكامل طاقتها والتي تتضمن هذه المبادئ هنا .