تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
التعريف بـ PostFix و PreFix و InFix ومجالات استخدامهم : الجزء الثالث
#1
[COLOR="#000080"]بسم الله الرحمن الرحيم

كنت قد تكلمت عن هياكل البيانات

هياكل البيانات Data Structures الصف Queue : الجزء الاول

هياكل البيانات Data Structures المكدس Stack: الجزء الثاني

وكان هذا من اجل الوصول الى هنا
كم منا يحاول ان يعرف نتيجة معادلة تكتب بالتيكست ؟
مثل هذا المعادلة فرضاً
كود :
5+8/2*6+(5-3^(8/4))

اعتقد الكثير
اذن كيف يتم ذلك

بداية ان المعالج لا يقرأ الصيغ هكذا (تسمى الصيغة بهذا الشكل infix)
لذا يجب تحويلها الى شكل يفهمه المعالج ويوجد صيغتين وهما prefix و postfix

ساشرح هاتين الصيغتين
قبل كل شيء يجب ان نعلم ان العمليات الحسابية كلها تتكون من 3 اشياء اساسية
اولا العامل operator
وهو اشارة + او - او log او mod ..... الخ

ثانيا المعامل operand
وهو الارقام التي يتم تطبيق المعامل operator عليها lمثل رقم 4 او 50 او 1000 او اي رقم اخر

ثالثا الاقواس ( )
يوجد بعض الاشخاص الذين ينسبونها الى العوامل operators ولكني اعتقد انها ليست كذلك لانها مستقلة بحد ذاتها
ووظيفة هذه الاقواس ( ) هي ترتيب الاولويات اعتقد ان الجميع فاهم قصدي اي انه اذا كانت لدينا المعادلة التالية
كود :
5*(2+1)

فإن اولوية العامل + اكبر من العامل * لانها كانت بين قوسين فهي تنفذ اولاً

هذه كانت المعلومات الاولية التي لا بد لك من معرفتها قبل الاكمال في هذا الشرح


الان ساشرح صيغة prefix
في هذه الصيغة يسبق العامل المعاملات اي ان العامل يأتي قبل المعاملات التي يجب ان يطبق عليها
مثال 1
المعادلة البسيطة التالية
كود :
A+B

تكتب هكذا
كود :
+AB

مثال 2
كود :
A+B*C

تكتب هكذا
كود :
+A*BC

حيث يقوم المعالج بحساب قيمة B*C ثم يجمعها مع A لتصبح A+B*C
لا تهتم كثيرا سنشرح كل شيء بالتفصيل لاحقاً

والان ساشرح صيغة postfix
في هذه الصيغة المعاملات تسبق العامل اي ان العامل يأتي بعد المعاملات التي يجب ان يطبق عليها
مثال 1
المعادلة
كود :
A+B

تكتب هكذا
كود :
AB+

مثال 2
كود :
A+B*C

تكتب هكذا
كود :
ABC*+

هنا يقوم المعالج بالبحث عن العامل الاول والذي هو * و يقوم بتطبيقه المعاملان السابقان له وهما B و C ثم يطبق العامل + على النتيجة السابقة مع المعامل A لتصبح المنعادلة A+B*C

الى هنا سأتوقف لأكمل لاحقا بإذن الله
سنتعرف لاحقا على طريقة تحويل المعادلات من صيغة infix الى كل من صيغة prefix و postfix
وذلك من خلال الفيجوال بيسك دوت نت وسنتعرف على خوارزمية التحويل من اجل كتابة تابع تحويل باي لغة برمجة كانت

والسلام عليكم ورحمة الله[/COLOR]
الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  تحويل الفيديو في برامجك-الجزء الثاني( إصلاح للمشاكل + تعديل للروابط + توضيح للأمر ) RaggiTech 1 710 10-12-14, 06:37 PM
آخر رد: abulayth
  الجزء الثالث من:كيف تجعل الـ Text Box ذكي!يترجم العمليات الحسابية ويخرج الناتج (الأقواس المتعددة) !! أنس محمود 9 2,062 06-12-14, 10:11 PM
آخر رد: RFEE3 ALSHAN
  حساب قيمة معادلة(اقصد صيغة دون مجاهيل) مكتوبة بالتكست : الجزء الخامس والاخير محمد شريقي 3 905 28-05-13, 01:06 PM
آخر رد: Sajad
  الجزء الثاني من:كيف تجعل الـ Text Box ذكي!يترجم العمليات الحسابية ويخرج الناتج ( العمليات المتعددة)! أنس محمود 0 688 22-02-13, 12:39 AM
آخر رد: أنس محمود
  مقال- تطوير الكونترول Property Attributes الجزء الثالث RaggiTech 0 365 06-10-12, 12:20 AM
آخر رد: RaggiTech
  الجزء الثاني - تطوير الكونترول Interfaces RaggiTech 0 384 06-10-12, 12:19 AM
آخر رد: RaggiTech
  مقال- Custom EventHandler & Classes - الجزء الثاني RaggiTech 0 355 05-10-12, 11:50 AM
آخر رد: RaggiTech
  مقال- Custom EventHandler & Classes - الجزء الأول RaggiTech 6 647 05-10-12, 11:48 AM
آخر رد: RaggiTech
  مقال- أفكار في الجرافكس ..... الجزء الثالث RaggiTech 3 468 05-10-12, 11:42 AM
آخر رد: RaggiTech
  مقال- أفكار في الجرافكس ....... الجزء الثاني RaggiTech 3 419 05-10-12, 11:27 AM
آخر رد: RaggiTech

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم