الخوارزميات و هياكل البيانات التحدي الثاني - حل التمرين الرابع بلغة جافا

المطلوب

قم بإنشاء برنامج يطلب من المستخدم إدخال ثلاث نصوص و يخزنهم في ثلاث متغيرات نصية هي S1, S2 و S3 و بعدها ينفذ التالي:

  1. يخبره ما إن كان دمج S1 مع S2 يساوي S3 أم لا.
  2. يخبره ما إن كان S1 يمثل جزء من S2 أو يساويه ( أي S1 == s2 ).
  3. إذا كان طول S1 أكبر من طول S2 قم بإضافة نص S2 على S1 و خزن الناتج في متغير نصي جديد إسمه S4.
  4. إذا كان طول S2 أكبر من طول S1 قم بإضافة نص S1 على S2 و خزن الناتج في متغير نصي جديد إسمه S4.
  5. يخبره ما إن كان S2 يمثل جزء من ثاني نصف في S1.
  6. يعرض له الأحرف الموجودة في أول نصف في S1.

الحل بلغة جافا

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        
        Scanner input = new Scanner(System.in);
        String S1, S2, S3, S4;

        System.out.print("Enter S1: ");
        S1 = input.nextLine();
        
        System.out.print("Enter S2: ");
        S2 = input.nextLine();
        
        System.out.print("Enter S3: ");
        S3 = input.nextLine();
        
        System.out.println("---------------------------------------");

        // Part 1
        System.out.println("The concatenation of S1 and S2 is equal S3? " + S3.equals(S1 + S2));

        // Part 2
        System.out.println("S1 is part of S2 or S1=S2? " + S2.contains(S1));

        // Part 3
        if (S1.length() > S2.length()) {
            S4 = S2 + S1;
        }

        // Part 4
        if (S2.length() > S1.length()) {
            S4 = S1 + S2;
        }

        // Part 5
        System.out.println("S2 is part of the second half of S1? " + (S1.indexOf(S2, S1.length() / 2) != -1));

        // Part 6
        System.out.print("The first half characters of S1 are: ");
        for (int i = 0; i < S1.length() / 2; i++) {
            System.out.print(S1.charAt(i));
        }
        
        System.out.println();
    }

}
		

سنحصل على النتيجة التالية في حال تم إدخال نفس القيم التي تم تعليمها باللون الأصفر عند التشغيل.

Enter S1: Mhamad
Enter S2: Harmush
Enter S3: MhamadHarmush
---------------------------------------
The concatenation of S1 and S2 is equal S3? true
S1 is part of S2 or S1=S2? false
S2 is part of the second half of S1? false
The first half characters of S1 are: Mha

الدورات

أدوات مساعدة

أقسام الموقع

دورات
مقالات كتب مشاريع أسئلة