Question

Need help with these array problems. int countAllPunctuation( const string array[ ], int n ); Return...

Need help with these array problems.

int countAllPunctuation( const string array[ ], int n );
Return the total number of punctuation symbols found in all the elements of the passed array argument. For the purpose of this function, the characters '.' , ',', '!', ';', ''', '-', '/', ':', '?', '"' count as punctuation symbols (that is, period, comma, exclamation mark, semicolon, apostrophe, dash, slash, colon, question mark, and double quote). Return -1 if n <= 0. For example, for the array   string data[ 4 ] = { "howard-", "ucla.", "howard", "ucla" }; countAllPunctuation( data, 4 ) should return the value 2 while countAllPunctuation( data, -14 )   should return -1.

int countFloatingPointValues( const string array[ ],int   n );
Return the total number of floating-point values found in all the array elements of the passed array argument. For the purpose of this function, a floating-point value should have the form #.#, where # is one of the digits 0-9. The decimal point is optional but should only be found once for the element to count as a valid floating-point value. Return -1 if n <= 0. For example, for the array     string data[ 4 ] = { "4.4.3.3", "44", "33.098", "33.098a" };     countFloatingPointValues( data, 4 ) should return the value 2 while countFloatingPointValues( data, -14 )   should return -1. According to this specification, all of the following are valid floatingPointValues: "1.0", "1", ".0101", "0.0123".   What I am after is the regular expression:   (0-9)+(.)?(0-9)* That means one or more digit characters followed by an optional decimal point followed by additional optional digit characters.

int removeDuplicatedValues( string array[ ], int  n );
This function should ensure that none of the array elements are the same. All the non-duplicated values should be kept together at the front of the array and your function should use "" (the empty string) to fill out the array as needed. Return the number of elements which were removed or -1 if the array has no elements.  For example, for the array  people[ 5 ]  shown above, removeDuplicatedValues( people, 5 )  should return 0 and the array argument should be unchanged. However, removeDuplicatedValues( people, -5 )  should return -1.  And finally, for the array     string data[ 4 ] = { "happy", "days", "happy", "days" };     removeDuplicatedValues( data, 4 ) should return the value 2 and the array argument should be changed to:   { "happy", "days", "", "" };

0 0
Add a comment Improve this question Transcribed image text
Answer #1

#include <iostream>
#include <string>

using namespace std;

int countAllPunctuation( const string array[], int n );

int main() {
   string data[ 4 ] = { "howard-", "ucla.", "howard", "ucla" };
   cout << countAllPunctuation( data, 4 ) << endl;
   cout << countAllPunctuation( data, -14 ) << endl;
   return 0;
}

int countAllPunctuation( const string array[], int n ) {
   int count = 0;
   char ch;
   if(n <= 0) {
       return -1;
   }
   for(int i = 0; i < n; ++i) {
       for(int j = 0; j < array[i].size(); ++j) {
           ch = array[i][j];
           if(ch == '.' || ch == ','|| ch == '!'|| ch == ';'|| ch == '\'' || ch == '-'|| ch == '/'|| ch == ':'|| ch == '?'|| ch == '"') {
               count++;
           }
       }
   }
   return count;
}

Process exited after 0.1382 seconds with returnvalue 0 Press any key to continue - - -

as\;per\;the\;guidelines\;we\;are\;only\;allowed\;to\;answer\;first\;question

please\;make\;a\;different\;post\;for\;remaining\;questions

Add a comment
Know the answer?
Add Answer to:
Need help with these array problems. int countAllPunctuation( const string array[ ], int n ); Return...
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for? Ask your own homework help question. Our experts will answer your question WITHIN MINUTES for Free.
Similar Homework Help Questions
ADVERTISEMENT
Free Homework Help App
Download From Google Play
Scan Your Homework
to Get Instant Free Answers
Need Online Homework Help?
Ask a Question
Get Answers For Free
Most questions answered within 3 hours.
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT