تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
التعريف بـ PostFix و PreFix و InFix ومجالات استخدامهم - الدرس الثالث
#1
كاتب الموضوع : محمد شريقي


بسم الله الرحمن الرحيم

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

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

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

وكان هذا من اجل الوصول الى هنا
كم منا يحاول ان يعرف نتيجة معادلة تكتب بالتيكست ؟
مثل هذا المعادلة فرضاً


كود :
5+8/2*6+(5-3^(8/4))
اعتقد الكثير
اذن كيف يتم ذلك

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

ساشرح هاتين الصيغتين
قبل كل شيء يجب ان نعلم ان العمليات الحسابية كلها تتكون من 3 اشياء اساسية
[SIZE=4]اولا العامل 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
المعادلة

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

كود :
ABC*+
مثال 2


A+B*C
تكتب هكذا


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

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

والسلام عليكم ورحمة الله
[/SIZE]

}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  الجزء الثالث من:كيف تجعل الـ Text Box ذكي!يترجم العمليات الحسابية ويخرج الناتج (الأقواس المتعددة) !! أنس محمود 10 7,825 19-07-22, 12:15 AM
آخر رد: StartLight4000
  [درس فيديو] مثال بسيط لبرنامج إجازات فقط لأغراض الشرح (الدرس الأول) عبدالله الدوسري 7 11,537 28-04-18, 06:55 PM
آخر رد: moniam
  مقال- تطوير الكونترول Property Attributes الجزء الثالث RaggiTech 0 2,267 06-10-12, 12:20 AM
آخر رد: RaggiTech
  مقال- أفكار في الجرافكس ..... الجزء الثالث RaggiTech 3 2,813 05-10-12, 11:42 AM
آخر رد: RaggiTech
  كيفية استخدام ملف التعريف الخاص بالتطبيق لاستهداف نسخة معينة من الفريموورك- ينطبق على RaggiTech 0 2,894 05-10-12, 01:46 AM
آخر رد: RaggiTech
  التحويل من Infix الى postfix و prefix : الجزء الرابع محمد شريقي 0 22,496 04-10-12, 02:17 PM
آخر رد: محمد شريقي
  التعريف بـ PostFix و PreFix و InFix ومجالات استخدامهم : الجزء الثالث محمد شريقي 0 3,247 04-10-12, 02:10 PM
آخر رد: محمد شريقي
  فصل العمليات الحسابية من النوع String، ( الجزء الثالث - عمليات الأقواس ) RaggiTech 0 2,617 04-10-12, 01:41 PM
آخر رد: RaggiTech
  دورة الفيجوال بيسك و اللينيكس - الدرس الثاني RaggiTech 0 2,960 03-10-12, 03:01 PM
آخر رد: RaggiTech
  دورة الفيجوال بيسك و اللينيكس - الدرس الاول RaggiTech 0 3,694 03-10-12, 03:00 PM
آخر رد: RaggiTech

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


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