Java-ohjelma luonnollisten numeroiden summan löytämiseksi rekursiota käyttämällä

Tässä ohjelmassa opit löytämään luonnollisen luvun summan käyttämällä Java-rekursiota. Tämä tehdään rekursiivisen toiminnon avulla.

Tämän esimerkin ymmärtämiseksi sinulla on oltava tieto seuraavista Java-ohjelmointiaiheista:

  • Java-menetelmät
  • Java-rekursio

Positiiviset luvut 1, 2, 3… tunnetaan luonnollisina numeroina. Alla oleva ohjelma ottaa käyttäjältä positiivisen kokonaisluvun ja laskee summan annettuun lukuun.

Löydät luonnollisten lukujen summan myös silmukan avulla. Opit kuitenkin ratkaisemaan tämän ongelman käyttämällä rekursiota täällä.

Esimerkki: Luonnollisten lukujen summa rekursiota käyttämällä

 public class AddNumbers ( public static void main(String() args) ( int number = 20; int sum = addNumbers(number); System.out.println("Sum = " + sum); ) public static int addNumbers(int num) ( if (num != 0) return num + addNumbers(num - 1); else return num; ) )

Tuotos

 Summa = 210

Numero, jonka summa on löydettävissä, on tallennettu muuttujanumeroon.

Aluksi addNumbers()kutsutaan main()funktiosta, jonka argumenttina on 20.

Numero (20) lisätään tulokseen addNumbers(19).

Seuraavassa funktiokutsussa kohteesta addNumbers()siirretään addNumbers()19, joka lisätään tulokseen addNumbers(18). Tätä prosessia jatketaan, kunnes numero on yhtä suuri kuin 0.

Kun num on yhtä suuri kuin 0, rekursiivista kutsua ei ole, ja tämä palauttaa kokonaislukujen summan main()funktioon.

Mielenkiintoisia artikkeleita...