Java >> Tutoriel Java >  >> Java

Programme Java pour trouver la somme de N nombres à l'aide de la récursivité

Dans ce tutoriel, nous verrons comment trouver la somme de N nombres en utilisant la récursivité. Une fonction récursive est une fonction qui s'appelle elle-même. Mais avant d'aller plus loin, si vous n'êtes pas familier avec le concept des boucles en Java, alors consultez l'article sur les boucles en Java.

Entrée : Entrez les chiffres :6 7 4 5 3

Sortie : La somme de tous les nombres saisis est :25

Programme 1 :Trouver la somme de N nombres à l'aide de la récursivité

Dans ce programme, nous verrons comment calculer la somme de N nombres en utilisant la récursivité. Ici, nous considérerons la variable de longueur dans la fonction comme paramètre changeant.

Algorithme :

  1. Démarrer

  2. Créez une instance de la classe Scanner.

  3. Déclarez une variable pour stocker la longueur du tableau.

  4. Demandez à l'utilisateur d'initialiser la taille du tableau.

  5. Déclarez une variable pour stocker les éléments du tableau.

  6. Demandez à l'utilisateur d'initialiser les éléments du tableau.

  7. Appelez une fonction récursive pour calculer la somme.

  8. Considérez la variable de longueur comme le paramètre changeant dans la fonction.

  9. Appelez la fonction de manière récursive pour calculer la somme.

  10. Afficher la somme calculée.

  11. Arrêtez.

Regardons l'exemple ci-dessous pour une meilleure compréhension de l'algorithme ci-dessus.

//Java Program to Find Sum of N Numbers Using Recursion
import java.util.*;
  
public class Main 
{
    // recursive function
     public static int calculate_sum(int arr[], int length)
    {
        // base condition - when reached -1 index return 0
        if (length == -1) 
        {
            return 0;
        }
        // Call the function recursively to calculate the sum
        return arr[length] + calculate_sum(arr,length - 1);
        
    }
    //Driver Code
    public static void main(String[] args)
    {
        //Create an instance of the Scanner Class
        Scanner sc=new Scanner(System.in);
        System.out.println("Enter the array size: ");
        int n=sc.nextInt();
        int total_sum = 0;
        //Array Creation and Initialization
        int arr[] = new int[n];
        System.out.println("Enter the array elements: ");
        for(int i=0;i<n;i++)
        {
            arr[i]=sc.nextInt();
        }
        // call function to calculate sum
        total_sum = calculate_sum(arr, n-1);
        System.out.println("The total of N numbers is : "+ total_sum);
    }
}


Entrez la taille du tableau :5
Entrez les éléments du tableau :4 7 6 5 3
Le total de N nombres est :25

Programme 2 :Trouver la somme de N nombres à l'aide de la récursivité

Dans ce programme, nous verrons comment calculer la somme de N nombres en utilisant la récursivité. Ici, nous allons commencer la récursivité à partir de la direction avant et atteindre et atteindre la condition de base à la fin/dernière position.

Algorithme :

  1. Démarrer

  2. Créez une instance de la classe Scanner.

  3. Déclarez une variable pour stocker la longueur du tableau.

  4. Demandez à l'utilisateur d'initialiser la taille du tableau.

  5. Déclarez une variable pour stocker les éléments du tableau.

  6. Demandez à l'utilisateur d'initialiser les éléments du tableau.

  7. Appelez une fonction récursive pour calculer la somme.

  8. Commencez la récursivité à partir de la direction avant.

  9. Appelez la fonction de manière récursive pour calculer la somme.

  10. Afficher la somme calculée.

  11. Arrêtez.

Regardons l'exemple ci-dessous pour une meilleure compréhension de l'algorithme ci-dessus.

//Java Program to Find Sum of N Numbers Using Recursion
import java.util.*;
  
public class Main 
{
    // recursive function
    public static int calculate_sum(int arr[], int i, int length)
    {
        // base condition - when reached end of the array
        // return 0
        if (i == length) {
            return 0;
        }
        // recursive condition - current element + sum of
        // (n-1) elements
        return arr[i]
         + calculate_sum(arr, i + 1,length);
        
    }
    //Driver Code
    public static void main(String[] args)
    {
        //Create an instance of the Scanner Class
        Scanner sc=new Scanner(System.in);
        System.out.println("Enter the array size: ");
        int n=sc.nextInt();
        int total_sum = 0;
        //Array Creation and Initialization
        int arr[] = new int[n];
        System.out.println("Enter the array elements: ");
        for(int i=0;i<n;i++)
        {
            arr[i]=sc.nextInt();
        }
        // call function to calculate sum
        total_sum = calculate_sum(arr,0,n);
        System.out.println("The total of N numbers is : "+ total_sum);
    }
}


Entrez la taille du tableau :5
Entrez les éléments du tableau :2 6 4 7 8
Le total de N nombres est :27


Balise Java