Odd numbers in given range of values in java with example

Read this article to know how to find the ODD number in given range of values. The below example, we have taken two Integer values from where to where we need to find the ODD numbers.

In general, will identify the EVEN/ODD numbers by modulo(%) operator with 2. If the modulo returned value will be equal to 0 the given number is an EVEN number otherwise ODD number.
                   if (i % 2 == 1)

The above condition will be true when i value is an ODD number only. First will write the small program to find the number is EVEN/ODD in the given range of the values and the total count of EVEN and ODD numbers.

public class EvenOrAOdd {

    public static void main(String[] args) {
        
        int l=2,r=7,evenCount=0,oddCount=0;
        for(int i=l;i<=r;i++) {
            if(i%2==1) {
                System.out.println(i+" is ODD number");
                oddCount++;
            }else {
                System.out.println(i+" is EVEN number");
                evenCount++;
            }
        }
        System.out.println("Even Count: "+evenCount+", ODD Count: "+oddCount);
    }
}

In the below example, oddNumbers(int l, int r) will identify all the ODD numbers between the given range of values(l-left, r-right) and return it to the main() method as an array type.

public class OddNumbers {

    public static void main(String[] args) {
        int l = 2, r = 9;
        int[] ar = oddNumbers(l, r);
        for (int i = 0; i < ar.length; i++) {
            System.out.println(ar[i]);
        }
    }

    public static int[] oddNumbers(int l, int r) {
        int counter = 0;
        int length = (((r - l) / 2)%2==0)?(r - l) / 2:((r - l) / 2)+1;
        int[] oddAr = new int[length];

        for (int i = l; i <= r; i++) {
            if (i % 2 == 1) {
                if (counter == 0) {
                    oddAr[counter] = i;
                    counter++;
                } else {
                    oddAr[counter] = i;
                    counter++;
                }
            } 
        }
        return oddAr;
    }

}

This question is part of the online coding test website.
*. Array length we need to identify dynamically depending on the given input range.
*. Similarly, if you want to find EVEN numbers in the given range of the values, you change the condition from if (i % 2 == 1) to if (i % 2 == 0).

Popular posts from this blog

Prime, Fibonacci and Factorial number with example in java

JNDI configuration for Tomcat 9 with Oracle

SessionFactory creation failed.java.lang.NoSuchFieldError: namingStrategy