Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<iostream>
- #include<string>
- using namespace std;
- void initializeLetters(int lttr[]);
- void countWordsLetters(string strng, int lttr[]);
- void printNumberofWordsLetters(int lttr[]);
- int main(void){
- string strInput;
- int letter[91]; // a to z (65-90) and white space (32)
- cout << "Input line: ";
- getline(cin, strInput);
- initializeLetters(letter);
- countWordsLetters(strInput, letter);
- printNumberofWordsLetters(letter);
- return 0;
- }
- void initializeLetters(int lttr[]){
- for(int i=0; i<91; i++)
- lttr[i] = 0;
- }
- void countWordsLetters(string strng, int lttr[]){
- int intEquivalent;
- for(int i=0; i<strng.length(); i++){
- if((int)strng[i] > 90)
- intEquivalent = (int) strng[i] - 32;
- else
- intEquivalent = (int) strng[i];
- if((intEquivalent == 32)&&((int)strng[i-1] == 32)) // two consecutive white spaces
- lttr[32]--; // uncount the previous white space
- lttr[intEquivalent]++;
- }
- }
- void printNumberofWordsLetters(int lttr[]){
- cout << lttr[32] + 1 << " words" << endl; // # of words = # of white spaces (32) + 1
- for(int i=65; i<91; i++) // A = 65, 90 = Z, 65-90 = A-Z
- if(lttr[i] > 0)
- cout << lttr[i] << " " << (char) (i + 32) << endl;
- }
Add Comment
Please, Sign In to add comment