JAVA prohození matice podle vedlejší diagonály
Zdravím, potřeboval bych poradit s jedním programem
Zadání:
1. Vygeneruje do celého dvojrozměrného pole o rozměru 5 x 5 (tj. matici) náhodná čísla z <-100,100>
2. Vypíše na konzoli matici v podobě pravidelně naformátované tabulky
3. Dále vypíše matici
A
kdy budou prohozené prvky podle hlavní diagonály
B
kdy budou prohozené prvky podle vedlejší diagonály.
Vypracované A:
public class program {
int a = 5;
int b = 5;
int pole[][] = new int[a][b];
void vygenerujPole() {
for (int i = 0; i < pole.length; i++) {
for (int j = 0; j < pole.length; j++) {
pole[i][j] = (int) (-100 + Math.random() * 200);
}
}
}
void vypsatPole1() {
for (int i = 0; i < pole.length; i++) {
for (int j = 0; j < pole.length; j++) {
System.out.printf("% 5d", pole[i][j]);
if (j == (a - 1)) {
System.out.println("");
}
}
}
}
void vypsatPole2() {
System.out.println("");
for (int i = 0; i < pole.length; i++) {
for (int j = 0; j < pole.length; j++) {
System.out.printf("% 5d", pole[i][j]);
if (j == (a - 1)) {
System.out.println("");
}
}
}
}
void prohoditPole() {
int pom;
for (int i = 0; i < pole.length; i++) {
for (int j = i; j < pole.length; j++) {
pom = pole[i][j];
pole[i][j] = pole[j][i];
pole[j][i] = pom;
}
}
}
public static void main(String[] args) {
program z = new program();
System.out.println("Prohození podle hlavní diagonály");
z.vygenerujPole();
z.vypsatPole1();
z.prohoditPole();
z.vypsatPole2();
}
A nemůžu přijít na řešení B. Pokud mám naprogramováno B, místo A, tak se omlouvám, strávil jsem nad tím půl dne a už z toho magořím.Děkuji