Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

In C++ 7. Write a program that merges the numbers in two files and writes all th

ID: 673159 • Letter: I

Question

In C++

7. Write a program that merges the numbers in two files and writes all the

numbers into a third file. Your program takes input from two different

files and writes its output to a third file. Each input file contains a list of

numbers of type int in sorted order from the smallest to the largest.

After the program is run, the output file will contain all the numbers in

the two input files in one longer list in sorted order from smallest to

largest. Your program should define a function that is called with the

two input-file streams and the output-file stream as three arguments. If

this is being done as a class assignment, obtain the file names from

your instructor.

Explanation / Answer

#include<bits/stdc++.h>
using namespace std;

int main(){
   ifstream f1;
   ifstream f2;

   std::vector<int> v;
   f1.open("File1.txt");
   f2.open("File2.txt");
   int x;
   while(f1 >> x){
       v.push_back(x);
   }

   while(f2 >> x){
       v.push_back(x);
   }
   f1.close();
   f2.close();
   sort(v.begin(), v.end());

   ofstream out;
   out.open("Output.txt");

   for(int i = 0 ; i < v.size(); i++){
       out << v[i] << " " ;
   }

   return 0;
}