➤ Even Number in Java
➤ Odd Number in Java
➤ Prime Number in Java
➤ Twin Prime Number
➤ Magic Number in Java
➤ Neon Number in Java
➤ Tech Number in Java
➤ Harshad Number
➤ Armstrong Number
➤ Palindrome Number
➤ Perfect Number in Java
➤ Pronic Number in Java
➤ Spy Number in Java
➤ Kaprekar Number
➤ Automorphic Number
➤ Krishnamurthy Number
➤ Sunny Number in Java
➤ Buzz Number in Java
➤ Evil Number in Java
➤ Duck Number in Java
➤ Nelson Number in Java
➤ Strong Number in Java
➤ Java Special Number
➤ Disarium Number
Java Number Program Using String
➤ Unique Number in Java
➤ Fascinating Number
➤ ISBN Number in Java
A number that has at least one 0 ( but not at the beginning of the number ) is called a duck number. In this post we will develop a Java program to check the given number is a duck number or not.
Example of the duck number:-
102350, it has two 0 so it is a duck number.
0123, it has one 0 but at the beginning of the number, so it is not a duck number.
078050, it has 3 zeros and among them, two are not at the beginning so it is a duck number.
Procedure to check the given number is duck number or not
1) Take a number
2) Find the last digit of the number
3) If the last digit is 0 then it is a duck number
4) Remove the last digit of the number
5) Repeat the 2 to 4 step until the number becomes 0
import java.util.Scanner; public class DuckNumber { // method to check duck number public static boolean isDuck(int number) { // loop to repeat the process while(number != 0) { // check last digit if(number%10 == 0) return true; // remove last digit number /= 10; } // else it is not a duck number return false; } public static void main(String[] args) { // declare variables int number = 0; // read the input Scanner scan = new Scanner(System.in); System.out.print("Enter an integer number:: "); number = scan.nextInt(); // check the number is duck number or not if(isDuck(number)) System.out.println(number+" is a" + " duck number"); else System.out.println(number+" is not a" + " duck number"); // close Scanner class object scan.close(); } }
The output for the different test-cases are:-
Enter an integer number:: 0123
123 is not a duck number
Enter an integer number:: 012023
12023 is a duck number
Enter an integer number:: 980750
980750 is a duck number
Also see:- Special number, Magic number, Armstrong number, Perfect number, Evil Number, Spy Number, Sunny number in Java
Java program to check duck number using String
We can also use String class to perform this operation
Procedure to check the given number is duck number or not using String
1) Take a number
2) Convert it into String
3) Check first character is zero or not? If yes then it is not a duck number
4) Check every character of the string if any character is 0 then it is a duck number.
import java.util.Scanner; public class DuckNumber { // method to check duck number using String public static boolean isDuck(int number) { // convert number into string String str = Integer.toString(number); // check first character if(str.charAt(0)=='0') return false; // iterate through remaining characters for(int i=1; i<str.length(); i++) { if(str.charAt(i)=='0') return true; } return false; } public static void main(String[] args) { // declare variables int number = 0; // read the input Scanner scan = new Scanner(System.in); System.out.print("Enter an integer number:: "); number = scan.nextInt(); // check the number is duck number or not if(isDuck(number)) System.out.println(number+" is a" + " duck number"); else System.out.println(number+" is not a" + " duck number"); // close Scanner class object scan.close(); } }
If you enjoyed this post, share it with your friends. Do you want to share more information about the topic discussed above or you find anything incorrect? Let us know in the comments. Thank you!