दो से अधिक संख्याओं के GCD के लिए जावा प्रोग्राम निम्नलिखित है:
उदाहरण
public class Demo{
static int gcd_of_nums(int val_1, int val_2){
if (val_1 == 0)
return val_2;
return gcd_of_nums(val_2 % val_1, val_1);
}
static int find_gcd(int arr[], int no){
int result = arr[0];
for (int i = 1; i < no; i++){
result = gcd_of_nums(arr[i], result);
if(result == 1){
return 1;
}
}
return result;
}
public static void main(String[] args){
int my_arr[] = { 7, 49, 177, 105, 119, 42};
int no = my_arr.length;
System.out.println("ऐरे में तत्वों का GCD है ");
System.out.println(find_gcd(my_arr, no));
}
}
आउटपुट
ऐरे में तत्वों का GCD है 1
Demo नामक एक क्लास में एक मुख्य फंक्शन होता है जो दो मान लेता है। यदि पहला मान 0 है, तो दूसरा मान आउटपुट के रूप में वापस किया जाता है। अन्यथा, दो तत्वों के महत्तम समापवर्तक की गणना करने वाला एक रिकर्सिव फंक्शन लिखा जाता है।
अगला, एक और स्टैटिक फंक्शन परिभाषित किया जाता है जो एक ऐरे और एक अन्य इंटीजर मान को पैरामीटर के रूप में लेता है। ऐरे का पहला एलिमेंट result नामक एक वेरिएबल को असाइन किया जाता है और एक for लूप फंक्शन को पास किए गए पैरामीटर के रूप में एक इंटीजर मान से 1 तक एलिमेंट्स पर पुनरावृति करता है। महत्तम समापवर्तक फंक्शन को इस ऐरे एलिमेंट्स और एक रिजल्ट पर कॉल किया जाता है। यह आउटपुट result वेरिएबल को ही असाइन किया जाता है। यदि result का मान 1 है, तो आउटपुट 1 है, अन्यथा result का मान वापस किया जाता है।
मुख्य फंक्शन में, एक ऐरे इंटीजर परिभाषित किया जाता है और ऐरे की लंबाई एक विशिष्ट मान को असाइन की जाती है। ऐरे एलिमेंट्स और लंबाई पर महत्तम समापवर्तक फंक्शन को कॉल किया जाता है। प्रासंगिक डेटा कंसोल पर प्रदर्शित किया जाता है।