Count of Prime digits in a Number
Given an integer N, the task is to count the number of prime digits in N.
Examples:
Input: N = 12
Output: 1
Explanation:
Digits of the number – {1, 2}
But, only 2 is prime number.
Input: N = 1032
Output: 2
Explanation:
Digits of the number – {1, 0, 3, 2}
3 and 2 are prime number
Approach: The idea is to iterate through all the digits of the number and check whether the digit is a prime or not. Since there are only four possible prime numbers in the range [0, 9] and every digit for sure lies in this range, we only need to check the number of digits equal to either of the elements in the set {2, 3, 5, 7}.
Below is the implementation of this approach:
CPP
// C++ program to count the number of // prime digits in a number #include <bits/stdc++.h> using namespace std; // Function to find the count of // prime digits in a number int countDigit( int n) { int temp = n, count = 0; // Loop to compute all the digits // of the number while (temp != 0) { // Finding every digit of the // given number int d = temp % 10; temp /= 10; // Checking if digit is prime or not // Only 2, 3, 5 and 7 are prime // one-digit number if (d == 2 || d == 3 || d == 5 || d == 7) count++; } return count; } // Driver code int main() { int n = 1234567890; cout << countDigit(n) << endl; return 0; } |
Java
// Java program to count the number of // prime digits in a number import java.util.*; import java.io.*; class GFG { // Function to find the count of // prime digits in a number static int countDigit( int n) { int temp = n, count = 0 ; // Loop to compute all the digits // of the number while (temp != 0 ) { // Finding every digit of the // given number int d = temp % 10 ; temp /= 10 ; // Checking if digit is prime or not // Only 2, 3, 5 and 7 are prime // one-digit number if (d == 2 || d == 3 || d == 5 || d == 7 ) count++; } return count; } // Driver code public static void main (String[] args) { int n = 1234567890 ; System.out.println(countDigit(n)) ; } } // This code is contributed by AnkitRai01 |
Python3
# Python3 program to count the number of # prime digits in a number # Function to find the count of # prime digits in a number def countDigit(n): temp = n count = 0 # Loop to compute all the digits # of the number while (temp ! = 0 ): # Finding every digit of the # given number d = temp % 10 temp / / = 10 # Checking if digit is prime or not # Only 2, 3, 5 and 7 are prime # one-digit number if (d = = 2 or d = = 3 or d = = 5 or d = = 7 ): count + = 1 return count # Driver code if __name__ = = '__main__' : n = 1234567890 print (countDigit(n)) # This code is contributed by mohit kumar 29 |
C#
// C# program to count the number of // prime digits in a number using System; class GFG { // Function to find the count of // prime digits in a number static int countDigit( int n) { int temp = n, count = 0; // Loop to compute all the digits // of the number while (temp != 0) { // Finding every digit of the // given number int d = temp % 10; temp /= 10; // Checking if digit is prime or not // Only 2, 3, 5 and 7 are prime // one-digit number if (d == 2 || d == 3 || d == 5 || d == 7) count++; } return count; } // Driver code public static void Main ( string [] args) { int n = 1234567890; Console.WriteLine(countDigit(n)) ; } } // This code is contributed by AnkitRai01 |
Javascript
<script> // JavaScript program to count the number of // prime digits in a number // Function to find the count of // prime digits in a number function countDigit(n) { let temp = n, count = 0; // Loop to compute all the digits // of the number while (temp != 0) { // Finding every digit of the // given number let d = temp % 10; temp = Math.floor(temp / 10); // Checking if digit is prime or not // Only 2, 3, 5 and 7 are prime // one-digit number if (d == 2 || d == 3 || d == 5 || d == 7) count++; } return count; } // Driver code let n = 1234567890; document.write(countDigit(n) + "<br>" ); // This code is contributed by gfgking </script> |
4
Time Complexity: O(log10N), where N is the length of the number.
Auxiliary Space: O(1)
Method#2:Use Recursion
C++
// C++ program to count the number of // prime digits in a number #include <bits/stdc++.h> using namespace std; // Function to find the count of // prime digits in a number int countDigit( int n, int count=0) { //BASE CASE if (n==0) return count; // Finding every digit of the // given number int d = n % 10; n /= 10; // Checking if digit is prime or not // Only 2, 3, 5 and 7 are prime // one-digit number if (d == 2 || d == 3|| d == 5 || d == 7){count++;} countDigit(n,count); //recursively calling function } // Driver code int main() { int n = 1234567890; cout << countDigit(n) << endl; return 0; } //This code is contributed by Shivesh Kumar Dwivedi |
Java
// Java program to count the number of // prime digits in a number import java.util.*; import java.io.*; class GFG { // Function to find the count of // prime digits in a number static int countDigit( int n, int count) { // BASE CASE if (n == 0 ) return count; // Finding every digit of the // given number int d = n % 10 ; n /= 10 ; // Checking if digit is prime or not // Only 2, 3, 5 and 7 are prime // one-digit number if (d == 2 || d == 3 || d == 5 || d == 7 ) { count++; } return countDigit(n, count); // recursively calling function } // Driver code public static void main(String[] args) { int n = 1234567890 ; System.out.println(countDigit(n, 0 )); } } // This code is contributed by phasing17 |
Python3
# Python3 program to count the number of # prime digits in a number # Function to find the count of # prime digits in a number def countDigit(n, count = 0 ): # BASE CASE if (n = = 0 ): print (count) return ; # Finding every digit of the # given number d = n % 10 ; n = int (n / 10 ); # Checking if digit is prime or not # Only 2, 3, 5 and 7 are prime # one-digit number if (d = = 2 or d = = 3 or d = = 5 or d = = 7 ): count + = 1 countDigit(n, count); #recursively calling function # Driver code n = 1234567890 ; countDigit(n) # This code is contributed by phasing17 |
C#
// C# program to count the number of // prime digits in a number using System; using System.Collections.Generic; class GFG { // Function to find the count of // prime digits in a number static int countDigit( int n, int count = 0) { // BASE CASE if (n == 0) return count; // Finding every digit of the // given number int d = n % 10; n /= 10; // Checking if digit is prime or not // Only 2, 3, 5 and 7 are prime // one-digit number if (d == 2 || d == 3 || d == 5 || d == 7) { count++; } return countDigit(n, count); // recursively calling function } // Driver code public static void Main( string [] args) { int n = 1234567890; Console.WriteLine(countDigit(n)); } } // This code is contributed by phasing17 |
Javascript
// JS program to count the number of // prime digits in a number // Function to find the count of // prime digits in a number function countDigit(n, count = 0) { // BASE CASE if (n == 0) { console.log(count); return ; } // Finding every digit of the // given number let d = n % 10; n = Math.floor(n / 10); // Checking if digit is prime or not // Only 2, 3, 5 and 7 are prime // one-digit number if (d == 2 || d == 3|| d == 5 || d == 7) { count++; } countDigit(n,count); //recursively calling function } // Driver code let n = 1234567890; countDigit(n) // This code is contributed by phasing17 |
4
Contact Us