Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <math.h>
- #include <fstream>
- using namespace std;
- int d = 0;
- ifstream f("prob3.in");
- ofstream g("prob3.out");
- int prim(int a)
- {
- if (a < 2)
- return 0;
- for (int i = 2; i * i <= a; i++)
- if (a % i == 0)
- return 0;
- return 1;
- }
- int determinant(int matrix[10][10], int n)
- {
- int det = 0;
- int submatrix[10][10];
- if (n == 2)
- return ((matrix[0][0] * matrix[1][1]) - (matrix[1][0] * matrix[0][1]));
- else {
- for (int x = 0; x < n; x++) {
- int subi = 0;
- for (int i = 1; i < n; i++) {
- int subj = 0;
- for (int j = 0; j < n; j++) {
- if (j == x)
- continue;
- submatrix[subi][subj] = matrix[i][j];
- subj++;
- }
- subi++;
- }
- det = det + (pow(-1, x) * matrix[0][x] * determinant(submatrix, n - 1));
- d++;
- }
- }
- return det;
- }
- int main()
- {
- int n, i, j, y;
- int matrix[10][10];
- f >> n;
- for (i = 0; i < n; i++) {
- for (j = 0; j < n; j++) {
- f >> matrix[i][j];
- }
- }
- g << " Ati introdus matricea" << endl;
- for (i = 0; i < n; i++) {
- for (j = 0; j < n; j++)
- g << matrix[i][j] << " ";
- g << endl;
- }
- int k = 0;
- y = determinant(matrix, n);
- g << " Determinantul : " << y << endl;
- g << " Numarul de apeluri la functie : " << d + 1 << endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement