البرمجة

تبديل الحروف بالأرقام في Java

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

  1. إنشاء دالة replaceAllVowels التي تأخذ سلسلة كمدخل.
  2. تعيين متغيرين لتتبع الأرقام الفردية والزوجية المستخدمة لاستبدال الحروف.
  3. تمرير السلسلة حرفًا بحرف وتحديد ما إذا كان كل حرف حرفًا علويًا أو حرفًا سفليًا.
  4. استبدال الحروف بالأرقام وفقًا للقواعد.
  5. إرجاع السلسلة الناتجة بعد الاستبدال.

الآن، دعنا نقوم بتحويل هذه الخطوات إلى كود Java:

java
public class Main { public static String replaceAllVowels(String str) { int oddNumber = 1; // الأرقام الفردية تبدأ من 1 int evenNumber = 2; // الأرقام الزوجية تبدأ من 2 StringBuilder result = new StringBuilder(); // لبناء السلسلة الناتجة // تمرير السلسلة حرفًا بحرف for (int i = 0; i < str.length(); i++) { char c = str.charAt(i); // التحقق مما إذا كان الحرف حرفًا علويًا أو سفليًا if (isVowel(c)) { // استبدال الحروف بالأرقام وفقًا للقواعد if (Character.isUpperCase(c)) { result.append(oddNumber); oddNumber += 2; // زيادة العدد الفردي بمقدار 2 للحصول على العدد التالي } else { result.append(evenNumber); evenNumber += 2; // زيادة العدد الزوجي بمقدار 2 للحصول على العدد التالي } } else { result.append(c); // إضافة الحرف دون تغيير إذا لم يكن حرفًا متغيرًا } } return result.toString(); // إرجاع السلسلة الناتجة بعد الاستبدال } // دالة للتحقق مما إذا كان الحرف حرفًا علويًا أو سفليًا private static boolean isVowel(char c) { return "AEIOUaeiou".indexOf(c) != -1; } public static void main(String[] args) { System.out.println(replaceAllVowels("Hello")); // يطبع: H2ll4 System.out.println(replaceAllVowels("HELLo")); // يطبع: H1ll2 System.out.println(replaceAllVowels("hello there this is a really long string")); // يطبع: h2ll4 th6r8 th10s 12s 14 r1618lly l20ng str22ng } }

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

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

بالطبع، دعوني أكمل المقال بمزيد من التوضيح والتفسير حول الكود المقدم وكيفية عمله.

في البداية، يقوم الكود بتعريف دالة replaceAllVowels التي تأخذ سلسلة كنص كمدخل وتُرجع سلسلة جديدة بعد استبدال جميع الحروف المتغيرة بالأرقام وفقًا للقواعد المحددة.

ثم، يتم تعيين متغيرين oddNumber و evenNumber لتتبع الأرقام الفردية والزوجية المستخدمة لاستبدال الحروف على التوالي. يبدأ العدد الفردي من 1 والعدد الزوجي من 2، وكلما تم استبدال حرف، يتم زيادة العدد بمقدار 2 للحصول على العدد التالي الذي سيتم استخدامه.

بعد ذلك، يتم استخدام حلقة for لتمرير السلسلة حرفًا بحرف. في كل تكرار، يتم فحص ما إذا كان الحرف حرفًا علويًا أو سفليًا باستخدام الدالة isVowel التي تعيد قيمة صحيحة إذا كان الحرف متغيرًا. إذا كان الحرف متغيرًا، يتم استبداله بالعدد المناسب وفقًا للقواعد المحددة ووضع العدد في السلسلة الناتجة.

أخيرًا، يتم إرجاع السلسلة الناتجة بعد الاستبدال باستخدام الدالة toString() لكائن StringBuilder.

يتم تجريب الكود باستخدام ثلاث حالات مختلفة للسلسلة، وتُطبع النتائج المتوقعة. يتم استخدام السلسلة “Hello” كمثال لتظهر كيفية استبدال الحروف بالأرقام الفردية والزوجية وفقًا للقواعد. ثم يتم تجربة حالتين أخريين لإظهار قدرة الكود على التعامل مع حالات مختلفة من الحروف والأرقام.

بهذا الشكل، يوفر الكود الحلا المطلوب وفقًا للمتطلبات المحددة في الموضوع، حيث يقوم بتبديل الحروف بالأرقام وفقًا للقواعد المحددة بطريقة دقيقة وفعالة.

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

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

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

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