English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

تعليمات Java الأساسية

تحكم Java Flow

مجموعات Java Array

Java Object-Oriented (I)

Java Object-Oriented (II)

Java Object-Oriented (III)

معالجة الاستثناء Java

قوائم Java List

Java Queue (مجموعة)

مجموعات Java Map

مجموعات Java Set

Java Input/Output (I/O)

Java Reader/Writer

موضوعات أخرى في Java

برنامج Java للبحث عن أقل أرقام مضروبة مشتركة لعددين

جميع الأمثلة Java

في هذا البرنامج، ستتعلم كيفية استخدام برنامج Java للبحث عن أقل أرقام مضروبة مشتركة لعددين. يتم ذلك باستخدام دائرة for و while في Java.

LCM لعددين كاملين هو أقل عدد صحيح يمكن قسمته بالكامل كلا العددين (بدون بقايا).

مثال 1: استخدام دائرة while والجملة if للبحث عن LCM

public class LCM {
    public static void main(String[] args) {
        int n1 = 72, n2 = 120, lcm;
        // أكبر قيمة بين n1 و n2 يتم تخزينها في lcm
        lcm = (n1 > n2) ? n1 : n2;
        // دائمًا صحيح
        while(true)
        {
            if(lcm % n1 == 0 && lcm % n2 == 0)
            {
                System.out.printf("%d و%d هو أكبر مشترك أولاً %d.", n1, n2, lcm);
                break;
            }
            ++lcm;
        }
    }
}

عند تشغيل هذا البرنامج، تكون النتيجة:

أحدث أرقام مضروبة مشتركة لـ 72 و 120 هو 360.

في هذا البرنامج، يتم تخزين العددين اللذين نريد العثور على أقل أرقام مضروبة مشتركة في متغيرات n1 و n2.
ثم، سنقوم أولاً بتعيين lcm إلى أكبر عدد من هذين العددين.
ذلك لأن أقل أرقام مضروبة مشتركة لا يمكن أن تكون أقل من أكبر عدد. في دائرة while غير محدودة (while(true))، نتحقق مما إذا كان lcm يمكن قسمته بالكامل n1 و n2.
إذا كان الأمر كذلك، فقد وجدنا أقل أرقام مضروبة مشتركة. سنطبع أقل أرقام مضروبة مشتركة ونستخدم جملة break للخروج من دائرة while.
إذا لم يكن ذلك الحال، سنزيد lcm بـ 1 ونعيد اختبار شرط القابلة للقسمة.

يمكننا أيضًا استخدام GCD للبحث عن LCM لعددين باستخدام المعادلة التالية:

LCM = (n1 * n2) / GCD

إذا كنت لا تعرف كيفية حساب GCD باستخدام Java، يرجى التحققبرنامج Java لتحديد أكبر مشترك أولاً بين数字ين.

مثال 2: حساب LCM باستخدام أكبر مشترك أولاً

public class LCM {
    public static void main(String[] args) {
        int n1 = 72, n2 = 120, gcd = 1;
        for(int i = 1; i <= n1 && i <= n2; ++i)
        {
            //تحقق من whether i هو عامل مشترك بين الأرقام
            if(n1 % i == 0 && n2 % i == 0)
                gcd = i;
        }
        int lcm = (n1 * n2) / gcd;
        System.out.printf("%d و%d هو أكبر مشترك أولاً %d.", n1, n2, lcm);
    }
}

إخراج البرنامج متطابق مع المثال 1.

في هذا المكان، في الدائرة للـ for، نحسب أكبر مشترك أولاً بين الأرقام -n1 و n2. بعد الحساب، نستخدم الصيغة أعلاه لحساب LCM.

جميع الأمثلة Java