Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <conio.h>
- #include <ctime>
- using namespace std;
- //void MatrizIndentidad()
- //{
- //
- // int Matriz_I[12][12];
- //
- // for (int fila = 0; fila < 12; fila++)
- // {
- // for (int columna = 0; columna < 12; columna++)
- // {
- // if (fila == columna)
- // Matriz_I[fila][columna] = 1;
- // else
- // Matriz_I[fila][columna] = 0;
- //
- // cout << Matriz_I[fila][columna];
- // }
- // cout << endl;
- // }
- //}
- //void MatrizA( int m[][12], int _n, int _n2)
- //{
- //
- // srand(time(NULL));
- // int Matriz_A[12][12];
- //
- // for (int fila = 0; fila < _n; fila++)
- // {
- // for (int columna = 0; columna < 12; columna++)
- // {
- // Matriz_A[fila][columna] = rand() % 10 + 1;
- //
- // cout << Matriz_A[fila][columna] << " ";
- // }
- //
- // cout << endl;
- // }
- //
- //}
- //void MatrizB()
- //{
- // srand(time(NULL));
- // int Matriz_B[12];
- //
- // for (int fila = 0; fila < 12; fila++)
- // {
- // Matriz_B[fila] = rand() % 50 + 10;
- //
- // cout << Matriz_B[fila] << endl;
- // }
- //}
- void main()
- {
- srand(time(NULL));
- int n;
- float s = 0, q;
- float C[12][12];
- do {
- cout << "Ingresa el tama" << char(164) << "o de las matrices: ";
- cin >> n;
- } while (n < 2 || n > 12);
- cout << "\nMATRIZ A: " << endl;
- float Matriz_A[12][12]; // esta es mi matriz A
- for (int i = 0; i < n; i++)
- {
- for (int j = 0; j < n; j++)
- {
- Matriz_A[i][j] = rand() % 10 + 10;
- cout << Matriz_A[i][j] << " ";
- }
- cout << endl;
- }
- cout << "\nMatriz Identidad: " << endl;
- float Matriz_I[12][12]; // esta es mi matriz B
- for (int i = 0; i < n; i++)
- {
- for (int j = 0; j < n; j++)
- {
- if (i == j)
- Matriz_I[i][j] = 1;
- else
- Matriz_I[i][j] = 0;
- cout << Matriz_I[i][j] << " ";
- }
- cout << endl;
- }
- //int Matriz_B[12]; // esta no es nada :v
- //for (int i = 0; i < n; i++)
- //{
- // Matriz_B[i] = rand() % 10 + 10;
- for (int k = 1; k <= n - 1; k++)
- {
- for (int i = 0; i < n; i++)
- for (int j = 0; j < n; j++) { C[i][j] = 0; }
- for (int i = 0; i < n; i++)
- for (int j = 0; j < n; j++)
- for (int z = 0; z < n; z++)
- {
- C[i][j] = C[i][j] + (Matriz_A[i][z] * Matriz_I[z][j]);
- }
- cout << "Mmatriz AUX:" << endl;
- for (int i = 0; i < n; i++)
- {
- for (int j = 0; j < n; j++)
- {
- cout << C[i][j] << " ";
- }
- cout << "\n" << endl;
- }
- cout << "\n" << endl;
- for (int i = 0; i < n; i++)
- for (int j = 0; j < n; j++)
- {
- if (i == j) { s = s + C[i][j]; }
- }
- q = s / k;
- for (int i = 0; i < n; i++)
- for (int j = 0; j < n; j++)
- {
- if (i == j)
- {
- Matriz_I[i][j] = C[i][j] - q;
- }
- else { Matriz_I[i][j] = C[i][j]; }
- }
- cout << "Mmatriz AUX :" << endl;
- for (int i = 0; i < n; i++)
- {
- for (int j = 0; j < n; j++)
- {
- cout << Matriz_I[i][j] << " ";
- }
- cout << "\n" << endl;
- }
- cout << "\n" << endl;
- s = 0;
- }
- for (int i = 0; i < n; i++)
- for (int j = 0; j < n; j++)
- C[i][j] = 0;
- for (int i = 0; i < n; i++)
- for (int j = 0; j < n; j++)
- for (int z = 0; z < n; z++)
- {
- C[i][j] = C[i][j] + (Matriz_A[i][z] * Matriz_I[z][j]);
- }
- cout << "Mmatriz AUX C:" << endl;
- for (int i = 0; i < n; i++)
- {
- for (int j = 0; j < n; j++)
- {
- cout << C[i][j] << " ";
- }
- cout << "\n" << endl;
- }
- for (int i = 0; i < n; i++)
- {
- for (int j = 0; j < n; j++)
- {
- if (i == j)
- {
- s = s + C[i][j];
- }
- }
- }
- cout << "La matriz inversa: \n" << endl;
- if (s / n != 0)
- {
- for (int i = 0; i < n; i++)
- for (int j = 0; j < n; j++)
- {
- Matriz_I[i][j] = (float)Matriz_I[i][j] / (float)(s / n);
- }
- for (int i = 0; i < n; i++)
- {
- for (int j = 0; j < n; j++)
- {
- cout << Matriz_I[i][j] << " ";
- }
- cout << "\n" << endl;
- }
- }
- cout << "\n" << endl;
- // cout << Matriz_B[i] << endl;
- //}
- /*
- for (int i = 0; i < n; i++)
- {
- for (int j = 0; j < n; j++)
- {
- for (int z = 0; z < n; z++)
- {
- C[i][j] += Matriz_A[i][z] * Matriz_I[z][j];
- }
- cout << C[i][j] << " ";
- }
- cout << endl;
- }*/
- _getch();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement