Once I thought, "Maximum number of English words starts with which letter" ? I searched in internet. But I could not get complete information anywhere. Finally I thought to write a program which will calculate the number of words starting with each letter. To do this I first needed a complete list of all English words in a text file. I searched it and downloaded the file which contains all English words.
Then I started writing a JAVA program to calculate the English words starting with each letter. Here is the result I am showing you.
| This graph shows number of words starting with each letter |
Number of English words starting with each letter in descending order
|
|
How to calculate ?
You need to download the following file for complete list of English words.
JAVA program to calculate
/*--------------Written by www.funbutlearn.com---------------*/
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class Dictionary {
public static void main(String[] args) throws IOException {
BufferedReader inputStream = new BufferedReader(new FileReader("D:/Dictionary.txt"));
String l;
int[] count = new int[26];
char[] letter={'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};
while ((l=inputStream.readLine())!=null){
switch(l.charAt(0)){
case 'a':count[0]=count[0]+1;break;
case 'b':count[1]=count[1]+1;break;
case 'c':count[2]=count[2]+1;break;
case 'd':count[3]=count[3]+1;break;
case 'e':count[4]=count[4]+1;break;
case 'f':count[5]=count[5]+1;break;
case 'g':count[6]=count[6]+1;break;
case 'h':count[7]=count[7]+1;break;
case 'i':count[8]=count[8]+1;break;
case 'j':count[9]=count[9]+1;break;
case 'k':count[10]=count[10]+1;break;
case 'l':count[11]=count[11]+1;break;
case 'm':count[12]=count[12]+1;break;
case 'n':count[13]=count[13]+1;break;
case 'o':count[14]=count[14]+1;break;
case 'p':count[15]=count[15]+1;break;
case 'q':count[16]=count[16]+1;break;
case 'r':count[17]=count[17]+1;break;
case 's':count[18]=count[18]+1;break;
case 't':count[19]=count[19]+1;break;
case 'u':count[20]=count[20]+1;break;
case 'v':count[21]=count[21]+1;break;
case 'w':count[22]=count[22]+1;break;
case 'x':count[23]=count[23]+1;break;
case 'y':count[24]=count[24]+1;break;
case 'z':count[25]=count[25]+1;break;
}
}
for(int j=0;j<26;j++){
for(int k=j+1;k<26;k++){
if(count[k]>count[j]){
int temp=count[k];
count[k]=count[j];
count[j]=temp;
char char1=letter[k];
letter[k]=letter[j];
letter[j]=char1;
}
}
}
for(int k=0;k<26;k++){
System.out.println(letter[k]+","+count[k]+","+((Double)((count[k]/236983.0)*100)).toString().substring(0, 4)+"%");
}
}
}
/*--------------Written by www.funbutlearn.com---------------*/
There another very similar article you must read






















