Using good OOP, write a C++ program that will compare two arrays to test for the same elements and multiplicity.   To begin, populate the arrays with the input files, comFile1.txt and comFile2.txt.   The elements in the arrays do not need to be in the same order for them to be considered similar.  For example: array 1:    121    144    19    161    19    144    19    11 array 2:    11    121    144    19    161    19    14

C++ for Engineers and Scientists
4th Edition
ISBN:9781133187844
Author:Bronson, Gary J.
Publisher:Bronson, Gary J.
Chapter7: Arrays
Section7.1: One-dimensional Arrays
Problem 10E: (Electrical eng.) Write a program that specifies three one-dimensional arrays named current,...
icon
Related questions
Question


Program Specifications:

Using good OOP, write a C++ program that will compare two arrays to test for the same elements and multiplicity.   To begin, populate the arrays with the input files, comFile1.txt and comFile2.txt.   The elements in the arrays do not need to be in the same order for them to be considered similar.  For example:

array 1:    121    144    19    161    19    144    19    11
array 2:    11    121    144    19    161    19    144    19

would be considered to have the same elements because 19 appears 3 times in each array, 144 appears twice in each array, and all other elements appear once in each array.

Use pointer notation instead of array notation whenever possible.

Display whether or not the arrays have the same elements and multiplicity.

Use private member functions and variables.
Use public member functions for a constructor (where appropriate) and a driver method only.


These specifications do not give a list of method names to be used.  It is assumed the program will use several methods doing one task each.


NOTE:  Any submission that uses global variables or does not use a class and object appropriately will result in a project grade of 0.

Expert Solution
Step 1

Code:

#include <iostream>
#include <fstream>
using namespace std;
int readFile(int* array, ifstream &fin)
{
    int count = 0;
    while(!fin.eof())
    {
       fin >> *(array+count);
       count++;
    }
    return count;
}
void bubbleSort(int* array, int size)
{
    for(int i = 0; i < size-1; i++)
        for(int j = 0; j < size-i-1; j++)
            if(*(array + j) > *(array + j + 1))
            {
               int temp = *(array + j);
               *(array + j) = *(array + j + 1);
               *(array + j + 1) = temp;
            }
}
int main()
{
    ifstream fin1, fin2;
    fin1.open("comFile1.txt");
    fin2.open("comFile2.txt");
    int array1[20], array2[20];
   
    int size1 = readFile(array1, fin1);
    int size2 = readFile(array2, fin2);
   
    if(size1 != size2)
        cout << "The elements and multiplicity is not the same." << endl;
    bubbleSort(array1, size1);
    bubbleSort(array2, size2);
    for(int i = 0; i < size1; i++)
        if(*(array1 + i) != *(array2 + i))
        {
           cout << "The elements and multiplicity is not the same." << endl;
           return 0;
        }
    cout << "The elements and multiplicity is the same." << endl;     
}

trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 3 steps with 4 images

Blurred answer
Knowledge Booster
Functions
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ for Engineers and Scientists
C++ for Engineers and Scientists
Computer Science
ISBN:
9781133187844
Author:
Bronson, Gary J.
Publisher:
Course Technology Ptr
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning