Saturday, October 5, 2024
Google search engine
HomeLanguagesJavaJava Program to Generate Harmonic Series

Java Program to Generate Harmonic Series

Harmonic series is the inverse of an arithmetic progression. In general, the terms in a harmonic progression can be denoted as

h1 = 1/a,  h2 = 1/(a+d), h3 = 1/(a+2d), h4 = 1/(a+3d), ……………..,  hn = 1/(a+nd).

Where h is the harmonic series, a is arithmetic progression and d is the common difference between arithmetic progression and n is the nth term.

Example 1: (Using while loop)

Java




// Java Program to Generate Harmonic Series
 
class HarmonicSeries {
 
    // this is a main function
    public static void main(String args[])
    {
 
        // num is the number of values we want in a series
        int num = 5;
        double result = 0.0;
 
        System.out.println("The harmonic series is: ");
 
        // printing the harmonic series till num value
        // using while loop
        while (num > 0) {
 
            // calculating harmonic values
            result = result + (double)1 / num;
 
            // after calculating harmonic value
            // decrementing num by 1 which means the common
            // difference is 1
            num--;
            System.out.print(result + ", ");
        }
    }
}


Output

The harmonic series is: 
0.2, 0.45, 0.7833333333333333, 1.2833333333333332, 2.283333333333333,

Time complexity: O(n) for given n terms

Auxiliary Space: O(1)

Example 2: (Using for loop) 

Java




// Java Program to Generate Harmonic Series
 
class HarmonicSeries {
 
    // this is a main function
    public static void main(String args[])
    {
 
        // num is the number of values we want in a series
        int num = 5;
        double result = 0.0;
 
        System.out.println("The harmonic series is: ");
 
        // printing the harmonic series till num value
        // using for loop
        for (int i = num; i > 0; i--) {
 
            // calculating harmonic values
            result = result + (double)1 / i;
            System.out.print(result + ", ");
        }
    }
}


Output

The harmonic series is: 
0.2, 0.45, 0.7833333333333333, 1.2833333333333332, 2.283333333333333,

Example 3: 

Java




// Java Program to Generate Harmonic Series
 
// importing necessary java packages
import java.util.Scanner;
import java.lang.*;
 
class HarmonicSeries {
 
    // this is a main function
    public static void main(String args[])
    {
 
        // scanner class is a pre-defined class in java
        // for taking input from keyboard
        Scanner in = new Scanner(System.in);
 
        System.out.print("Enter Number: ");
 
        // storing input value in num
        int num = in.nextInt();
        double result = 0.0;
 
        System.out.println("The harmonic series is: ");
 
        // printing the harmonic series till num value
        // using for loop
        for (int i = num; i > 0; i--) {
 
            // calculating harmonic values
            result = result + (double)1 / i;
 
            System.out.print(result + ", ");
        }
    }
}


Output 

$ javac HarmonicSeries.java
$ java HarmonicSeries

Enter Number: 5
The harmonic series is: 
0.2, 0.45, 0.7833333333333333, 1.2833333333333332, 2.283333333333333
$ javac HarmonicSeries.java
$ java HarmonicSeries

Enter Number: 6
The harmonic series is: 
0.16666666666666666, 0.3666666666666667, 0.6166666666666667, 0.95, 1.45, 2.45

Time complexity: O(N) to generate series for given N terms

Auxiliary Space: O(1)
 

Dominic Rubhabha-Wardslaus
Dominic Rubhabha-Wardslaushttp://wardslaus.com
infosec,malicious & dos attacks generator, boot rom exploit philanthropist , wild hacker , game developer,
RELATED ARTICLES

Most Popular

Recent Comments