Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package testsimerdavzor;
- public class Matice {
- private final int[][] pole;
- public Matice(int pocetRadku, int pocetSloupcu) {
- if (pocetRadku >= 0 && pocetSloupcu >= 0) {
- pole = new int[pocetRadku][pocetSloupcu];
- } else {
- pole = null;
- System.out.print("Matici nelze vytvořit. Chybné zadání!");
- }
- }
- public Matice(int pocetRadku) {
- this(pocetRadku, pocetRadku);
- }
- public void naplnMatici(int min, int max) {
- for (int i = 0; i < pole.length; i++) {
- for (int j = 0; j < pole[i].length; j++) {
- pole[i][j] = (int) Math.round(Math.random() * (max - min) + min);
- }
- }
- }
- @Override
- public String toString() {
- StringBuilder str = new StringBuilder();
- for (int i = 0; i < pole.length; i++) {
- for (int j = 0; j < pole[i].length; j++) {
- str.append(String.format("%4d ", pole[i][j]));
- }
- str.append('\n');
- }
- return str.toString();
- }
- public Matice transponujMatici() {
- Matice m = new Matice(this.pole[0].length, this.pole.length);
- for (int i = 0; i < m.pole.length; i++) {
- for (int j = 0; j < m.pole[i].length; j++) {
- m.pole[i][j] = this.pole[j][i];
- }
- }
- return m;
- }
- public int[] hlavniDiagonala() {
- int delka = (this.pole.length < this.pole[0].length) ? this.pole.length : this.pole[0].length;
- int[] poleDiagonala = new int[delka];
- for (int i = 0; i < delka; i++) {
- poleDiagonala[i] = this.pole[i][i];
- }
- return poleDiagonala;
- }
- public int[] vedlejsiDiagonala(){
- int delka = (this.pole.length < this.pole[0].length) ? this.pole.length : this.pole[0].length;
- int[] poleDiagonala = new int[delka];
- for (int i = 0; i < delka; i++) {
- poleDiagonala[i] = this.pole[i][delka - i-1];
- }
- return poleDiagonala;
- }
- public Matice setridSloupec(int sloupec)
- {
- Matice m1 = this;
- for (int i = 0; i < m1.pole.length - 1; i++) { //Cyklus s určitým počtem opakování
- for (int j = 0; j < m1.pole.length - i - 1; j++) { //Cyklus s určitým počtem opakování
- if (m1.pole[j][sloupec] < m1.pole[j + 1][sloupec]) {
- int tmp = m1.pole[j][sloupec];
- m1.pole[j][sloupec] = m1.pole[j + 1][sloupec];
- m1.pole[j + 1][sloupec] = tmp;
- }
- }
- }
- return m1;
- }
- public Matice setridRadek(int radek)
- {
- Matice m1 = this;
- for (int i = 0; i < pole[0].length - 1; i++) {
- for (int j = 0; j < pole[0].length - i - 1; j++) {
- if(pole[radek][j] < pole[radek][j+1]){
- int tmp = pole[radek][j];
- pole[radek][j] = pole[radek][j+1];
- pole[radek][j+1] = tmp;
- }
- }
- }
- return m1;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment