w3resource

Java: Count the number of decimal places in a given number


17. Count Decimal Places

Write a Java program to count the number of decimal places in a given number.

Sample Solution-1:

Java Code:

public class test {
 
   public static void main(String[] args) {	   
	   String n = "123";
	   System.out.println("Original Number: "+n);
	   System.out.println("Number of decimal places in the said number: "+validate(n));
	   n = "112.3";
    	   System.out.println("\nOriginal Number: "+n);
	   System.out.println("Number of decimal places in the said number: "+validate(n));
	   n = "112.03";
    	  System.out.println("\nOriginal Number: "+n);
	  System.out.println("Number of decimal places in the said number: "+validate(n));
	  n = "112.233";
    	 System.out.println("\nOriginal Number: "+n);
	 System.out.println("Number of decimal places in the said number: "+validate(n));
        }

   public static Integer validate(String n) {
	   	if(n.contains("."))
			return n.replaceAll(".*\\.(?=\\d?)", "").length();
		return 0;
  }
}

Sample Output:

Original Number: 123
Number of decimal places in the said number: 0

Original Number: 112.3
Number of decimal places in the said number: 1

Original Number: 112.03
Number of decimal places in the said number: 2

Original Number: 112.233
Number of decimal places in the said number: 3

Pictorial Presentation:

Java Regular Expression: Count the number of decimal places in a given number.

Flowchart :

Flowchart: Count the number of decimal places in a given number.

Sample Solution-2:

Java Code:

public class test {
 
   public static void main(String[] args) {	   
	    String n = "123";
		System.out.println("Original Number: "+n);
		System.out.println("Number of decimal places in the said number: "+validate(n));
		n = "112.3";
    	System.out.println("\nOriginal Number: "+n);
		System.out.println("Number of decimal places in the said number: "+validate(n));
		n = "112.03";
    	System.out.println("\nOriginal Number: "+n);
		System.out.println("Number of decimal places in the said number: "+validate(n));
		n = "112.233";
    	System.out.println("\nOriginal Number: "+n);
		System.out.println("Number of decimal places in the said number: "+validate(n));
        }

   public static Integer validate(String n) {
	   	int ctr = n.indexOf(".");
		return ctr > 0 ? n.length() - ctr - 1 : 0;
  }
}

Sample Output:

Original Number: 123
Number of decimal places in the said number: 0

Original Number: 112.3
Number of decimal places in the said number: 1

Original Number: 112.03
Number of decimal places in the said number: 2

Original Number: 112.233
Number of decimal places in the said number: 3

Flowchart :

Flowchart: Count the number of decimal places in a given number.


For more Practice: Solve these Related Problems:

  • Write a Java program to determine the number of digits after the decimal point in a floating-point number represented as a string.
  • Write a Java program to count the fractional digits in a decimal number by splitting its string representation.
  • Write a Java program to implement a method that returns the number of decimal places in a number, handling cases with no decimal point.
  • Write a Java program to compare the decimal precision of two numbers by counting their decimal places.

Go to:


PREV : Replace Vowels with Character.

NEXT : Validate PIN Code.

Java Code Editor:

Contribute your code and comments through Disqus.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.