يعد الترميز البولندي العكسي (RPN) أحد أكثر العمليات شيوعًا التي قد يواجهها المبرمج. تم تقديم هذا الترميز في عام 1920 من قبل عالم الرياضيات جان لوكاسيفيتش وتم تطويره خصيصًا لتقليل التعبيرات الرياضية الكبيرة للغاية. بالإضافة إلى ذلك، فإن هذا النوع من التدوين يستخدم حاليًا على نطاق واسع في عالم الآلات الحاسبة العلمية، لذا ننصحك بالبقاء معنا لتتعلم كيفية استخدامه بشكل صحيح.
أين أو في أي نوع من العمليات الرياضية يمكنك مواجهة التدوين البولندي العكسي؟
يوجد هذا النوع من اللغة الرياضية بشكل شائع في الحساب والجبر وهو نوع من اللغات التشغيلية التي يجب أن يكون كل مهندس أنظمة على دراية بها. بمرور الوقت، تم اعتبار هذا النوع من العمليات أو التعبيرات الرقمية بديلاً ممتازًا لتقليل استخدام الذاكرة بشكل كبير على جهاز الكمبيوتر. ومنذ اكتشاف ذلك، انتشر استخدامه في كل أنظمة التشغيل في العالم. وبفضل هذا، يمكن برمجته بسرعة، مما يترك وراءه خسارة كبيرة للوقت.
في معظم الحالات، يستغرق المبرمج وقتًا أطول من المتوقع لتطوير عمليات التطبيق ونظام التشغيل وصفحة الويب وما إلى ذلك. لتطبيق التدوين البولندي العكسي في البرمجة، تحتاج إلى العمل باستخدام بنية LIFO (آخر ما يدخل أولاً يخرج أولاً) للعمليات الرياضية. يعتمد هذا النوع من الإجراءات على حقيقة أنه ليس من الضروري وضع العملية بأكملها بطريقة منظمة للعثور على النتيجة التي نتوقعها. ومن الأفضل توضيح ذلك بمثال:
لنفترض أننا بحاجة إلى برمجة صفحة صرف العملات الدولية الآلية، نحتاج أولاً إلى وضع جميع الوسائط، وفي هذه الحالة سنعمل بالدولار واليورو. يمكن أن تكون العملية بشكل أساسي A x B = C بافتراض أن A بالدولار وB هي قيمة اليورو بالدولار.
عند تنفيذ العملية سيكون لدينا نتيجة لذلك الدولارات التي سنحتاجها لشراء مبلغ مقدر باليورو، ولكن عند برمجة الصفحة يجب أن تكون العملية تلقائية. ولهذا السبب يتم تطبيق التدوين البولندي العكسي ، وفي هذه الحالة سيتم التعبير عنه على النحو التالي: AB x، وبالتالي فإن النتيجة، التي ستكون C، سيتم تطبيقها تلقائيًا على الصفحة.
كيفية بناء التدوين البولندي العكسي بشكل صحيح؟
كما يوحي الاسم، فإن التعبير البولندي العكسي سيضع المعاملات أولاً (والتي ستكون الأرقام التي نحتاجها للقسمة والضرب وما إلى ذلك)، ثم العامل. العامل في هذه الحالة سيكون الضرب، القسمة، الجمع، من بين إجراءات أخرى، وبالطبع مثال بسيط يبقيك في السياق، لا يضر أبدًا، لذلك سنعرضه أدناه.
أب+
لنفترض أن A هو 15 وB هو 45، البرمجة بهذه الطريقة سوف يتعرف النظام على الفور على أننا نشير إلى عملية رياضية وبالتالي سنجد على الفور ج. والتي في هذه الحالة ستكون 65.
إذا كنت تدرس البرمجة، فسيكون من الأسهل عليك فهم الكود التالي الذي نقدمه أدناه.
![رمز آر بي إن](https://mathority.org/wp-content/uploads/2023/07/code-rpn.webp)
إنه يقدم عملية بسيطة والتي، في التدوين البولندي العكسي بدون برمجة، سيتم التعبير عنها على النحو التالي.
1) [“2″، “1”، “+”، “3”، “*”] -> ((2 + 1) * 3) -> 9)
2) [“4″، “13”، “5”، “/”، “+”] -> (4 + (13 / 5)) -> 6
تحليل العملية:
يجب أن يؤخذ في الاعتبار أن هذه العملية يجب أن تكون مكدسة، مع ميل خاص نحو القسمة والطرح. وأولًا، نحتاج إلى التخلص من الانقسام، واستخراج جميع البيانات الموجودة داخل الأقواس الأولى. بمجرد حسابها، يتم وضع هذه القيمة الجديدة على المكدس، وبالطبع فإن الإجراء بأكمله سيعطي الرقم 6، مع الأخذ في الاعتبار أن كل عملية مستقلة عن الأخرى، ونأخذ الرقم 2 كمثال.
ما هي الفوائد التي يمكن أن يقدمها لك عكس التدوين البولندي؟
- سيتم تطوير حساب أي نوع من العمليات الرياضية التي تريد التعبير عنها بشكل تسلسلي، لذلك سيكون لدينا أخطاء أقل عند إنشاء أي نوع من العمليات المعقدة.
- ولا يتطلب الأمر استخدام الأقواس أو أي نوع من القواعد الجبرية، لأننا نقوم بإضافة المعلومات، لذلك يتم حساب أي عملية في خطوات.
- بالنسبة لطلاب البرمجة أو أي نوع من الهندسة، يصبح من الأسهل بكثير فهم العملية التي يتم إجراؤها.
- يمكن أن يؤدي نسخ أي نوع من العمليات الحسابية مباشرة على الآلة الحاسبة دون معرفة متعمقة بالحساب إلى حدوث أخطاء، ولهذا السبب يعد تطبيق NPI أكثر عملية.
- يجب ألا تستخدم الرمز = للعثور على النتيجة التي تتوقعها.
ما هي الآلات الحاسبة التي يوصى بها أكثر لتطبيق NPI (التدوين البولندي العكسي)؟
الآلات الحاسبة هي أفضل أداة لأي طالب، ولكن في معظم الحالات يتم تصميمها فقط لحل العمليات البسيطة ويتم تكوينها بنفس الطريقة التي يتم كتابتها بها عادةً. لذا، إذا كنت تبحث عن آلة حاسبة يمكنها التعامل مع التدوين البولندي العكسي، فستحتاج إلى آلة أبسط قليلاً، وأكثرها شيوعًا بين المبرمجين هي HP 50G .
على الرغم من أن هناك أيضًا آلات حاسبة أخرى يمكنها التعبير عن هذه الأنواع من العمليات عبر الإنترنت (يمكن أن تكون العديد من الآلات الحاسبة من HP خيارًا جيدًا يجب أخذه في الاعتبار)، ولكن بالطبع، يمكن أن يؤدي وجود آلة حاسبة متخصصة إلى تسريع عملية البرمجة.
ومن مزاياه يمكننا تسليط الضوء على:
- مكتبة مدمجة خاصة للمعادلات المعقدة.
- أكثر من 300 صيغة آلية ذات ثوابت علمية لأي نوع من العمليات مع التدوين البولندي العكسي.
- باستخدامه، يمكنك تطوير التطبيقات بشكل أسرع من المتوقع.
- كما أنها تلبي معايير الآلة الحاسبة العلمية الشائعة، لذلك قد يكون التدوين البولندي العكسي هو نقطة قوتها، ولكنها تعمل أيضًا مع أنواع أخرى من العمليات.
لقد أحدث التدوين البولندي العكسي ثورة كبيرة في أنظمة البرمجة ، ولا شك أنه يوصى بتطبيقه للحصول على نتائج دقيقة، دون أخطاء حسابية شائعة. ماذا تنتظر لتحصل على خاصتك؟ أخيرًا، نود أن نوصيك بمراجعة مقالتنا حول الترميز الرياضي ، حيث يمكن أن تكمل المعلومات حول الترميز البولندي العكسي (RPN) التي تعلمتها في هذه المقالة.