|
|
|
|
|
|
|
// Precondition:
// All parameters are assigned
// Postcondition:
// upperCount == upperCount@entry + 1, if ch == A Z
// && lowerCount == lowerCount@entry +1, if ch == a z
// && digitCount == digitCount@entry + 1, if ch == 0 9
// && blankCount == blankCount@entry + 1, if ch ==
// && puncCount == puncCount@entry + 1, if ch == . or ?
// or !
// && leftOverCount == leftOverCount@entry + 1, otherwise
{
if (isupper(ch))
upperCount++;
else if (islower(ch))
lowerCount++;
else if (isdigit(ch))
digitCount++;
else
switch (ch)
{
case : blankCount++;
break;
case .:
case ?:
case !: puncCount++;
break;
default: leftOverCount++;
break; // Unnecessary here, but OK
}
}
//******************************************************************
void CalculateAndPrint( /* in */ int upperCount, // Counter
/* in */ int lowerCount, // Counter
/* in */ int digitCount, // Counter
/* in */ int blankCount, // Counter
/* in */ int puncCount, // Counter
/* in */ int leftOverCount ) // Counter
// Calculates the total number of characters and prints the
// percentage for each category of characters (except leftOverCount)
|
|
|
|
|
|