Изменить с клавиатуры любой элемент двумерного массива

Всем здравствуйте. Есть в файле матрица. Я загрузил файл и сделал почти все операции над массивом. Вот только не пойку, как изменять элементы в матрице (пользователь вводит, какой элемент изменить и на какой изменить) можно ли это вообще сделать. Подскажите, пожалуйста.

#include <iostream>
#include <Windows.h>
#include <fstream>
#include <string>
#include <cmath>
using namespace std;

class Matrix
{
private:
    int size;
    int** matrix;
    int determinant;
    int maximum;
    int minimum;
    int sumElementsMainDiagonal;
    int element;
    string location = "matrix.txt";
    fstream file;
public:
    Matrix()
    {
        size = 3;
        matrix = new int* [size];
        for (int i = 0; i < size; i++)
            matrix[i] = new int[size];
    }
    void openMatrix()
    {
        file.open(location);
        if (file.is_open())
        {
            cout << "Файл відкрився" << endl;
        }
        else
        {
            cout << "Файл не відкрився" << endl;
        }
    }
    
    void matrixToArray()
    {
        for (int i = 0; i < size; i++)
        {
            for (int j = 0; j < size; j++)
            {
                file >> matrix[i][j];
            }
        }
    }
    void printArray()
    {
        for (int i = 0; i < size; i++)
        {
            for (int j = 0; j < size; j++)
            {
                cout << matrix[i][j] << " ";
            }
            cout << endl;
        }
    }
    
    double findDeterminant()
    {
        int p;
        int t;
        p = 0;
        for (int i = 0; i < size - 1; i++)
        {
            t = 1;
            while (matrix[i][i] == 0)
            {
                for (int j = 0; j < size; j++)
                {
                    matrix[i][j] = determinant;
                    matrix[i][j] = matrix[i + t][j];
                    matrix[i + t][j] = determinant;
                }
                p++;
                t++;
            }
            for (int k = i + 1; k < size; k++)
            {
                determinant = matrix[k][i] / matrix[i][i];
                for (int j = 0; j < size; j++)
                    matrix[k][j] -= matrix[i][j] * determinant;
            }
        }
        determinant = pow(-1, p);
        for (int i = 0; i < size; i++)
            determinant *= matrix[i][i];
        return determinant;   
    }
    int findMaximum()
    {
        maximum = matrix[0][0];
        for (int i = 0; i < size; i++)
        {
            for (int j = 0; j < size; j++)
            {
                if (matrix[i][j] > maximum)
                {
                    maximum = matrix[i][j];
                }
            }
        }
        return maximum;
    }
    int findMinimum()
    {
        minimum = matrix[0][0];
        for (int i = 0; i < size; i++)
        {
            for (int j = 0; j < size; j++)
            {
                if (matrix[i][j] < minimum)
                {
                    minimum = matrix[i][j];
                }
            }
        }
        return minimum;
    }
    int findSumElementsMainDiagonal()
    {
        for (int i = 0; i < size; i++)
        {
            for (int j = 0; j < size; j++)
            {
                if (i == j)
                {
                    sumElementsMainDiagonal += matrix[i][j];
                }
            }
        }
        return sumElementsMainDiagonal;
    }
    void findElement()
    {
        cout << "Укажіть елемент, який треба вивести: ";
        cin >> element;
        for (int i = 0; i < size; i++)
        {
            for (int j = 0; j < size; j++)
            {
                if (element == matrix[i][j])
                {
                    cout << "Заданий елемент = " << element << endl;
                }
            }
        }
    }
    int getSize()
    {
        return size;
    }
    ~Matrix()
    {
        file.close();
        delete[] matrix;
    }
};
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    Matrix matrix;
    matrix.openMatrix();
    cout << "Кількысть рядків = " << matrix.getSize() << endl;
    cout << "Кількысть стовбців = " << matrix.getSize() << endl;
    matrix.matrixToArray();
    matrix.printArray();
    cout << "Максимальний елемент = " << matrix.findMaximum() << endl;
    cout << "Мінімальний елемент = " <<matrix.findMinimum() << endl;
    cout << "Сума елементів на головній діагоналі = " << matrix.findSumElementsMainDiagonal() << endl;
    cout << "Визначник матриці = " << matrix.findDeterminant() << endl;
    matrix.findElement();
    return 0;
    system("pause");
}

Ответы (0 шт):