البرمجة

تحليل المعادلات الرياضية باستخدام Java

للقيام بتحويل النص الواحد إلى مصفوفة تحتوي على العناصر المفرقة في المعادلة، يجب أن نفهم كيفية تحليل المعادلة وفصل العناصر بناءً على الرموز الحسابية المستخدمة. في هذه الحالة، نقوم بتحليل المعادلة إلى العناصر التالية: الأرقام والعمليات الحسابية (+، -، *، /) والأقواس. بمجرد فهم هذا، يمكننا كتابة الشيفرة بشكل يقوم بتقسيم المعادلة بناءً على هذه العناصر.

في البداية، سنقوم بإزالة أي مسافات فارغة في النص ومن ثم نقوم بتحليل المعادلة حرفاً حرفاً. ثم، سنقوم بإنشاء مصفوفة تحتوي على العناصر الفردية.

الشيفرة قد تبدو كما يلي:

java
public class Main { public static void main(String[] args) { String equation = "(300+23)*(43-21)/(84+7)"; // إزالة المسافات الفارغة equation = equation.replaceAll("\\s+", ""); // قائمة لتخزين العناصر List elements = new ArrayList<>(); // تحليل المعادلة حرفاً حرفاً StringBuilder currentElement = new StringBuilder(); for (char c : equation.toCharArray()) { if (Character.isDigit(c)) { // إضافة الأرقام إلى العنصر الحالي currentElement.append(c); } else { if (currentElement.length() > 0) { // إذا كان هناك عنصر رقمي تم جمعه، قم بإضافته إلى القائمة elements.add(currentElement.toString()); currentElement.setLength(0); // استعد للعنصر القادم } // إضافة العمليات أو الأقواس إلى القائمة elements.add(String.valueOf(c)); } } // إضافة أي عنصر آخر قد تم تجاهله (إذا كان موجوداً) if (currentElement.length() > 0) { elements.add(currentElement.toString()); } // طباعة العناصر for (String element : elements) { System.out.println(element); } } }

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

المزيد من المعلومات

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

مرة أخرى، لنلق نظرة عميقة على الشيفرة:

  1. تم استخدام المتغير equation لتخزين المعادلة الرياضية التي ترغب في تحليلها.
  2. تم استخدام replaceAll() لإزالة أي مسافات فارغة من المعادلة لتسهيل عملية التحليل.
  3. تم استخدام List لتخزين العناصر المفرقة من المعادلة.
  4. تم استخدام حلقة for لتحليل المعادلة حرفاً حرفاً.
  5. تم استخدام StringBuilder لبناء الأرقام التي تتألف من أكثر من رقم واحد.
  6. تم التحقق من طابع كل حرف، حيث إذا كان الحرف رقمًا، تم إضافته إلى العنصر الحالي، وإذا كانت العناصر السابقة هي الأرقام، فتمت إضافتها إلى القائمة.
  7. في النهاية، تمت طباعة العناصر المفرقة.

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

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

مقالات ذات صلة

زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

يرجى تعطيل مانع الإعلانات حيث أن موقعنا غير مزعج ولا بأس من عرض الأعلانات لك فهي تعتبر كمصدر دخل لنا و دعم مقدم منك لنا لنستمر في تقديم المحتوى المناسب و المفيد لك فلا تبخل بدعمنا عزيزي الزائر