Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- template <typename T>
- int determinant(T matrix, int size) {
- int mult1 = 1, mult2 = 1;
- for (int i = 0; i < size; i++)
- mult1 *= matrix[i][i];
- for (int i = 0; i < size; i++)
- mult2 *= matrix[i][size - 1 - i];
- return mult1 - mult2;
- };
- template <typename T>
- T** generate_matrix(int size) {
- T** matr = new T*[size];
- for (int i = 0; i < size; i++) {
- matr[i] = new T[size];
- for (int j = 0; j < size; j++) {
- matr[i][j] = rand() % 10 + 0;
- cout << matr[i][j] << " ";
- }
- cout << endl;
- }
- return matr;
- };
- int main() {
- cout << "Matrix A type int, size 3x3:" << endl;
- int** A = generate_matrix<int>(3);
- cout << "Determinant A = " << determinant(A, 3) << endl;
- cout << endl;
- cout << "Matrix B type float, size 5x5:" << endl;
- float** B = generate_matrix<float>(5);
- cout << "Determinant B = " << determinant(B, 5) << endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement