Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package macierzaki;
- public class Macierzaki {
- double[][] tab;
- String name;
- int wi, ko;
- Macierzaki(int w, int k, String n) {
- name = n;
- tab = new double[w][k];
- wi = w;
- ko = k;
- }
- Macierzaki(int w, String n) {
- this(w, w, n);
- }
- Macierzaki(int w, int k) {
- this(w, k, "");
- }
- Macierzaki(int w) {
- this(w, w, "");
- }
- Macierzaki wytnijWiersz(int ww) {
- Macierzaki result = new Macierzaki(tab.length -1,tab[0].length, name);
- for (int i = 0; i < ww; i++) {
- for (int j = 0; j < tab[0].length; j++) {
- result.tab[i][j] = this.tab[i][j];
- }
- }
- for (int i=ww; i < tab.length -1; i++) {
- for (int j = 0; j < tab[0].length; j++) {
- result.tab[i][j] = this.tab[i+1][j];
- }
- }
- return result;
- }
- Macierzaki wytnijKolumne(int wk) {
- Macierzaki result = new Macierzaki(tab.length,tab[0].length-1, name);
- for (int i = 0; i < tab.length; i++) {
- for (int j = 0; j < wk; j++) {
- result.tab[i][j] = this.tab[i][j];
- }
- for (int j = wk; j <tab[0].length-1; j++)
- {
- result.tab[i][j] = this.tab[i][j+1];
- }
- }
- return result;
- }
- Macierzaki wytnijWierszeKolumny(int ww, int wk) {
- Macierzaki temp = this.wytnijWiersz(ww);
- return temp.wytnijKolumne(wk);
- }
- double det() {
- double result = 0.0;
- for (int j = 0; j < this.tab[0].length; j++) {
- if (this.tab.length == 1 && this.tab[0].length == 1) {
- result = tab[0][0];
- } else {
- result += tab[0][j] *Math.pow(-1,j+2)* this.wytnijWierszeKolumny(0, j).det();
- }
- }
- return result;
- }
- public static void main(String[] args) {
- Macierzaki m1 = new Macierzaki(3, 3);
- m1.tab[0][0] = 1;
- m1.tab[0][1] = 8;
- m1.tab[0][2] = 32;
- m1.tab[1][0] = 15;
- m1.tab[1][1] = 7;
- m1.tab[1][2] = 4;
- m1.tab[2][0] = 2;
- m1.tab[2][1] = 5;
- m1.tab[2][2] = 2;
- System.out.println(m1.det());
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement