Write a program to implement a survey that prompts respondents to enter an integral value within a specified range to indicate how they like a new product. Since the program must be adaptable to any arbitrary number of respondents and value ranges, define macro MAX_RESPONDENTS to represent the maximum number of respondents, MIN_RESPONSE_VALUE to represent the lowest permissible response value, and MAX_RESPONSE_VALUE to represent the highest. Use an array to accumulate the total count of how many of each response value has been entered. If a value is out of range, it must be discarded and the same respondent prompted again. If a respondent desires to terminate the survey before all respondents have been polled, that respondent may enter a specific number of out of range responses in a row, which the program uses as a survey termination flag.
Once the survey is terminated, either because all respondents have been polled or because of out of range responses, the program will output the total number of respondents that gave each of the possible responses.
Program output should look something like the following, depending upon the chosen range:
Rating Number of Responses
• Declare only one array, which must contain one and only one element for each legal response value. This array may not contain a separate element for each respondent.
• Use a macro to define the number of consecutive out of range responses required to terminate.
• The program is to be done using classes.
• Test using different numbers of respondents and both negative and positive response ranges.