Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Java

जावा प्रोग्राम रिकर्सन का उपयोग करके एन नंबरों का योग खोजने के लिए

इस लेख में, हम समझेंगे कि रिकर्सन का उपयोग करके एन संख्याओं का योग कैसे प्राप्त करें। एक पुनरावर्ती फ़ंक्शन एक ऐसा फ़ंक्शन है जो किसी विशेष स्थिति के संतुष्ट होने तक स्वयं को कई बार कॉल करता है।

पुनरावर्ती वस्तुओं को स्व-समान तरीके से दोहराने की प्रक्रिया है। प्रोग्रामिंग भाषाओं में, यदि कोई प्रोग्राम आपको उसी फ़ंक्शन के अंदर किसी फ़ंक्शन को कॉल करने की अनुमति देता है, तो इसे फ़ंक्शन का पुनरावर्ती कॉल कहा जाता है।

कई प्रोग्रामिंग भाषाएं स्टैक के माध्यम से रिकर्सन को लागू करती हैं। आम तौर पर, जब भी कोई फ़ंक्शन (कॉलर) किसी अन्य फ़ंक्शन (कैली) या स्वयं को कैली के रूप में कॉल करता है, तो कॉलर फ़ंक्शन कैली को निष्पादन नियंत्रण स्थानांतरित करता है। इस स्थानांतरण प्रक्रिया में कुछ डेटा भी शामिल हो सकता है जिसे कॉलर से कॉल करने वाले को भेजा जाना है।

नीचे उसी का एक प्रदर्शन है -

इनपुट

मान लीजिए हमारा इनपुट है -

Enter the value of N : 6
Enter the elements of array :
15 30 45 80 100 140

आउटपुट

वांछित आउटपुट होगा -

The total of N numbers is : 410

एल्गोरिदम

Step 1 - START
Step 2 - Declare two integer values namely N , my_sum and i and an integer array ‘my_array’
Step 3 - Read the required values from the user/ define the values
Step 4 - A recursive function ‘RecursiveSum is defined which takes two integers as input. The function computes the reminder by re-iterating over the function multiple times, until the base condition is reached.
Step 5 - The recursive function ‘RecursiveSum is called and its result is stored
Step 6 - Display the result
Step 7 - Stop

उदाहरण 1

यहां, उपयोगकर्ता द्वारा एक प्रॉम्प्ट के आधार पर इनपुट दर्ज किया जा रहा है। आप इस उदाहरण को हमारे कोडिंग ग्राउंड टूल में लाइव देख सकते हैं जावा प्रोग्राम रिकर्सन का उपयोग करके एन नंबरों का योग खोजने के लिए

import java.util.Scanner;
public class ArraySum {
   public static int RecursiveSum(int my_array[], int i,int N){
      if (i == N)
         return 0;
      return my_array[i] + RecursiveSum(my_array, i + 1,N);
   }
   public static void main(String[] args){
     int N, my_sum, i;
     N = 6;
     my_sum = 0;
     System.out.println("Required packages have been imported");
     Scanner my_scanner = new Scanner(System.in);
     System.out.println("A reader object has been defined ");
     System.out.print("Enter the value of N : ");
     N = my_scanner.nextInt();
     int my_array[] = new int[N];
     System.out.println("Enter the elements of the array :" );
     for ( i = 0 ; i < N ; i++ ){
        my_array[i] = my_scanner.nextInt();
     }
     my_sum = RecursiveSum(my_array, 0, N);
     System.out.println("\n The total of N numbers is : " + my_sum);
   }
}

आउटपुट

Required packages have been imported
A reader object has been defined
Enter the value of N : 6
Enter the elements of the array :
15
30
45
80
100
140
The total of N numbers is : 410

उदाहरण 2

यहां, पूर्णांक को पहले परिभाषित किया गया है, और इसके मान को एक्सेस किया जाता है और कंसोल पर प्रदर्शित किया जाता है।

public class Main {
   public static void main(String[] args) {
      int[] my_array = {15, 20, 25, 30, 35, 40};
      int my_input , i, array_size;
      array_size = 5;
      my_input = 25;
      boolean my_check = false;
      System.out.println("The number is defined as " +my_input);
      System.out.println("The elements in the integer array is defined as :" );
      for ( i = 0 ; i < array_size ; i++ ){
         System.out.print(my_array[i] +" ");
      }
      for ( i = 0 ; i < array_size ; i++ ) {
         if (my_array[i] == my_input) {
            my_check = true;
            break;
         }
      }
     if(my_check)
        System.out.println("\nThe array contains the given value");
     else
        System.out.println("\nThe array doesnot contain the given value");
   }
}

आउटपुट

The number is defined as 25
The elements in the integer array is defined as :
15 20 25 30 35
The array contains the given value

  1. सी प्रोग्राम दो संख्याओं का योग और अंतर खोजने के लिए

    मान लीजिए कि हमारे पास दो पूर्णांक संख्याएँ a, b और दो अस्थायी बिंदु संख्याएँ c, d हैं। हमें a और b के साथ-साथ c और d का योग भी निकालना होगा। हमें a और c का योग भी ज्ञात करना है। तो प्रिंटफ फ़ंक्शन शैली के आधार पर, आउटपुट भिन्न हो सकता है। इसलिए, यदि इनपुट a =5, b =58 c =6.32, d =8.64 जैसा है, तो आ

  1. सी प्रोग्राम रिकर्सिव फ़ंक्शन का उपयोग करके संख्याओं की जीसीडी खोजने के लिए

    समस्या C प्रोग्रामिंग भाषा में पुनरावर्ती फ़ंक्शन का उपयोग करके दिए गए दो नंबरों के लिए सबसे बड़ा सामान्य भाजक (GCD) खोजें। समाधान रिकर्सिव फ़ंक्शन का उपयोग करके दिए गए दो नंबरों के लिए सबसे बड़ा सामान्य भाजक (जीसीडी) खोजने का समाधान इस प्रकार है - एल्गोरिदम रिकर्सिव फ़ंक्शन का उपयोग करके दिए गए

  1. पायथन में रिकर्सन का उपयोग करके प्राकृतिक संख्याओं का योग कैसे प्राप्त करें?

    यदि कोई फ़ंक्शन स्वयं को कॉल करता है, तो उसे पुनरावर्ती फ़ंक्शन कहा जाता है। इसे अनंत लूप में गिरने से रोकने के लिए, रिकर्सिव कॉल को सशर्त स्टेटमेंट में रखा जाता है। निम्नलिखित प्रोग्राम उपयोगकर्ता से इनपुट के रूप में एक संख्या को स्वीकार करता है और इसे rsum() फ़ंक्शन के लिए तर्क के रूप में भेजता है