Question: In this lab exercise, you are required to write a C++ program to add two 4 * 5 matrices and then output the results to
In this lab exercise, you are required to write a C++ program to add two 4 * 5 matrices and then output the results to the screen.
* Prompt the user to enter the name of two files with matrices
* Compute the sum of the two matrices and output the results
* A sample run is as follows:
Please enter the name of the file containing data for Array 1: input1.txt Please enter the name of the file containing data for Array 2: input2.txt The sum is: 2 3 4 5 6 3 4 5 6 7 4 5 6 7 8 5 6 7 8 9
* Further requirements:
* Create three functions:
*readArray with void return and one 2D array argument and one string argument
*printArray with void return and one 2D array argument
*sumArray with void return and three 2D array arguments
*Separate your code into three files as described in the lab:
*main.cpp
*myFunction.cpp
*myFunction.h
*Remember, you will have to break the compiling into three steps now:
*g++ -c main.cpp
*g++ -c myFunction.cpp
*g++ main.o myFunction.o -o main
*The two input files are available by clicking: input1.txt and input2.txt
*Once again, your cousin Brittany has been writing code. She has made 6 mistakes. Also, she hasn't broken her code into three files.
This is in c++ program. Please follow all instructions and the output of your code.
input1.txt
1 1 1 1 1 2 2 2 2 2 3 3 3 3 3 4 4 4 4 4
input2.txt
1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5
Britany's code with 6 mistakes (not in three files yet).
#include
const unsigned int R_SIZE=4; const unsigned int C_SIZE=5;
void readArray( int p_Array[][], string fName ); // function prototype
int main() { int i, j; int Nums1[C_SIZE][R_SIZE]; string filename; cout << "Please enter the name of the file containing data for Array 1: "; cin >>filename; readArray(Nums1[][],filename); for ( i=0; i < C_SIZE; i++) { for ( j=0; j< R_SIZE; j++) { cout<< Nums1[i][j] << " "; } cout << endl; }
}
// Function: readArray // Purpose: To read values into an array. // Parameters: Base address of an array. // Returns: void // -------------------------------------------------------- void readArray(int p_Array[][C_SIZE], string fName) {
ifstream inF; int i, j;
inF.open(fName.c_str());
for ( i=0; i < R_SIZE; i++) { for ( j=0; j< C_SIZE; i++) { inF >> Nums1[i][j]; } }
} // end InitArray function
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
