Count Numbers with N digits which consists of even number of 0’s

Given a number N. The task is to find the count of numbers which have N digits and even number of zeroes.

Note: The number can have preceding 0’s.

Examples:



Input: N = 2
Output: Count = 81 
Total 2 digit numbers are 99 considering 1 as 01.
2 digit numbers are 01, 02, 03, 04, 05.... 99
Numbers with odd 0's are 01, 02, 03, 04, 05, 06, 07, 08, 09
10, 20, 30, 40, 50, 70, 80, 90 i.e. 18
The rest of the numbers between 01 and 99 will 
do not have any zeroes and zero is also an even number.
So, numbers with even 0's are 99 - 18 = 81.

Input: N = 3
Output: Count = 755

Approach: The idea is to find the Count Numbers with N digits which consists of odd number of 0’s and subtract it from the total number with N digits to get the number with even 0’s.

C++

filter_none

edit
close

play_arrow

link
brightness_4
code

// C++ program to count numbers with N digits
// which consists of odd number of 0's
#include <bits/stdc++.h>
using namespace std;
  
// Function to count Numbers with N digits
// which consists of odd number of 0's
int countNumbers(int N)
{
    return (pow(10, N) - 1) - (pow(10, N) - pow(8, N)) / 2;
}
  
// Driver code
int main()
{
    int n = 2;
  
    cout << countNumbers(n) << endl;
  
    return 0;
}

chevron_right


Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to count numbers 
// with N digits which consists 
// of odd number of 0's 
import java.lang.*;
import java.util.*;
  
class GFG
{
      
// Function to count Numbers with 
// N digits which consists of odd 
// number of 0's 
static double countNumbers(int N) 
    return (Math.pow(10, N) - 1) - 
           (Math.pow(10, N) - 
            Math.pow(8, N)) / 2
  
// Driver code 
static public void main (String args[])
{
    int n = 2
    System.out.println(countNumbers(n)); 
}
}
  
// This code si contributed 
// by Akanksha Rai

chevron_right


Python3

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python3  program to count numbers with N digits
#  which consists of odd number of 0's
  
# Function to count Numbers with N digits
#  which consists of odd number of 0's
def countNumber(n):
  
    return (pow(10,n)-1)- (pow(10,n)-pow(8,n))//2
  
  
# Driver code
n = 2
print(countNumber(n))
  
# This code is contributed by Shrikant13

chevron_right


C#

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# program to count numbers 
// with N digits which consists 
// of odd number of 0's 
using System;
  
class GFG
{
      
// Function to count Numbers with 
// N digits which consists of odd 
// number of 0's 
static double countNumbers(int N) 
    return (Math.Pow(10, N) - 1) - 
           (Math.Pow(10, N) - 
            Math.Pow(8, N)) / 2; 
  
// Driver code 
static public void Main ()
{
    int n = 2; 
    Console.WriteLine(countNumbers(n)); 
}
}
  
// This code si contributed by ajit 

chevron_right


PHP

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
// PHP program to count numbers with N digits 
// which consists of odd number of 0's 
  
// Function to count Numbers with N digits 
// which consists of odd number of 0's 
function countNumbers($N
    return (pow(10, $N) - 1) - 
           (pow(10, $N) - pow(8, $N)) / 2; 
  
// Driver code 
$n = 2; 
echo countNumbers($n),"\n"
  
// This code is contributed by akt_mit
?>

chevron_right


Output:

81

Note: Answer can be very large, so for N greater than 9, use modular exponentiation.



My Personal Notes arrow_drop_up

Discovering ways to develop a plane for soaring career goals

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.