Java Program to Print the Series 2 1 1/2 1/4 1/8 …N

In the previous article we have discussed about Java Program to Print the Series 2 3 12 37 86 166 … N

In this article we are going to see how to print the series 6 11 21 36 56 …N by using Java programming language.

Java Program to Print the Series 2 1 1/2 1/4 1/8 …N

On observing the pattern carefully, we can see first number starts from 2

Then the next number follows a logic i.e previous element/2

2
2/2 = 1
1/2
1/2 / 2 = 1/4
1/4 / 2 = 1/8 and so on.

Example:

2 1 1/2 1/4 1/8 1/16 …… N

Let’s see different ways to print the series 6 11 21 36 56 …N

Method-1: Java Program to Print the Series 2 1 1/2 1/4 1/8 …N By Using For Loop

Approach:

  • Create Scanner class object.
  • Declare an integer variable say ‘n’ which holds the number of terms in the series.
  • Prompt the user to enter a number as value of n.
  • Let declare an double variable say ‘result’ and initialize it to 2
  • Use a for loop from i=1 to i<=n-1 where the loop is incremented by 1
  • Inside the for loop we will find the value of result=result/2
  • Print the result in the series.

Program:

import java.util.*;
public class Main
{
    public static void main(String [] args)
    {
        //creating object of Scanner class 
        Scanner s = new Scanner(System.in);
        //Taking input of number of elements in the series
        System.out.println("Enter the number of terms ");
        int n = s.nextInt();
        double result = 2;
        System.out.print(result);
        //for loop to print the series
        for (int i = 1; i <= n-1; i++) 
        {
            result /=2; 
            System.out.print(" "+result);
        } 
    }
}
Output:

Enter the number of terms
5
2.0 1.0 0.5 0.25 0.125

Method-2: Java Program to Print the Series 2 1 1/2 1/4 1/8 …N By Using While Loop

Approach:

  • Create Scanner class object.
  • Declare an integer variable say ‘n’ which holds the number of terms in the series.
  • Prompt the user to enter a number as value of n.
  • Let declare an double variable say ‘result’ and initialize it to 2
  • Declare and initialize an integer variable i=1
  • Continue a while loop till i<=n-1, where i is incremented by 1.
  • Inside the while loop we will find the value of result=result/2
  • Print the result in the series.

Program:

import java.util.*;
public class Main
{
    public static void main(String [] args)
    {
        //creating object of Scanner class 
        Scanner s = new Scanner(System.in);
        //Taking input of number of elements in the series
        System.out.println("Enter the number of terms ");
        int n = s.nextInt();
        double result=2;
        System.out.print(result);
        int i=1;
        while(i<=n-1)
        {
            result /=2; 
            System.out.print("  "+result);
            i++;
        }      
    }
}
Output:

Enter the number of terms
7
2.0 1.0 0.5 0.25 0.125 0.0625 0.03125

Method-3: Java Program to Print the Series 2 1 1/2 1/4 1/8 …N By Using User Defined Method

Approach:

  • Create Scanner class object.
  • Declare an integer variable say ‘n’ which holds the number of terms in the series.
  • Prompt the user to enter a number as value of n.
  • Then call a user defined method printSeries() by passing n as parameter.
  • Inside method declare an double variable say ‘result’ and initialize it to 2
  • Use a for loop from i=1 to i<=n-1 where the loop is incremented by 1
  • Inside the for loop we will find the value of result=result/2
  • Print the result in the series.

Program:

import java.util.*;
public class Main
{
    public static void main(String[] args)
    {
        // creating object of scanner class 
        Scanner s = new Scanner(System.in);
        //Taking input of number of elements in the series
        System.out.println("Enter the number of terms ");
        int n = s.nextInt();
        // calling printSeries method to print the series
        printSeries(n);
    }
    
    //printSeries metthod to print the series
    public static void printSeries(int n)
    {
        double result = 2;
        System.out.print(result);
        //for loop to print the series
        for (int i = 1; i <=n-1; i++) 
        {
            result /=2; 
            System.out.print(" "+result);
        } 
    }
}
Output:

Enter the number of terms
9
2.0 1.0 0.5 0.25 0.125 0.0625 0.03125 0.015625 0.0078125

Beginners and experienced programmers can rely on these Best Java Programs Examples and code various basic and complex logics in the Java programming language with ease.

Related Java Programs: