Write a program to input a number. Count and print the frequency of each digit present in that number. The output should be given as:
Sample Input: 44514621
Sample Output:=====================
Digit Frequency
=====================
1 2
2 1
4 3
5 1
6 1
Sample Input: 44514621
Sample Output:=====================
Digit Frequency
=====================
1 2
2 1
4 3
5 1
6 1
import java.io.*;class Digit_Freq{ public static void main(String args[])throws IOException { BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); System.out.print("Enter any number : "); int n = Integer.parseInt(br.readLine()); int freq[]=new int[10]; //array for storing frequency of all digits for(int i=0; i<10; i++) { freq[i]=0; //intializing the count of every digit with '0' } /*Note: Frequency of digit '0' is stored in freq[0], frequency of '1' in freq[1] and so on*/ System.out.println("Output:"); System.out.println("===================="); //this is just for styling the look of the output System.out.println("Digit\tFrequency"); System.out.println("===================="); int d; while(n>0) { d=n%10; //extracting digit from the end freq[d]++; //increasing the frequency of that digit. n=n/10; } for(int i=0; i<10; i++) { if(freq[i]!=0) //printing only those digits whose count is not '0' System.out.println(" "+i+"\t "+freq[i]); } } }
Output:
Enter any number : 937825770
Output:
=====================
Digit Frequency
=====================
0 1
2 1
3 1
5 1
7 3
8 1
9 1
No comments:
Post a Comment