Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem JAVA prohození matice podle vedlejší diagonály

Myslim ze todle nijak osetřeny neni a prostě to bude překladat presne tak jak to je napsany, celej kod výše se da sbouchnout na polovinu. Zhruba takhle:

import java.util.Random;

public class Program {
    Random rd = new Random();
    int pole[][] = new int[5][5];

    void vygenerujPole() {
        for (int i = 0; i < pole.length; i++) {
            for (int j = 0; j < pole.length; j++) {
                pole[i][j] = rd.nextInt(11); //generuje jen od 0 do 10
              //pole[i][j] = -100 + rd.nextInt(201); //generovani v intervalu <-100,100>
              //pole[i][j] = min + generator(max - min +1);
            }
        }
    }
    
    void vypisPole(){
	for (int i = 0; i < pole.length; i++){
	    for (int prvek: pole[i]) System.out.printf("% 5d", prvek);//for-each cyklus
            //vypsani každeho řadku jako pole(matice je pole polí -> každý řádek je pole)
	    System.out.println(""); //odřadkovani za každym řadkem matice
	}
	System.out.println(""); //odřadkovani za matici
    }

    void prohoditPole() {
        for (int i = 0; i < pole.length; i++) {
            for (int j = i; j < pole.length; j++) {
                int pom = pole[i][j];
                pole[i][j] = pole[j][i];
                pole[j][i] = pom;
            }
        }
    }

    public static void main(String[] args) {
	Program matice = new Program();
	
        matice.vygenerujPole();
	matice.vypisPole();
	
	System.out.println("Prohození podle hlavní diagonály");
		
	matice.prohoditPole();
	matice.vypisPole();
    }
}
BTW Nic to ale neměni na tom, že ta metoda prohodPole() tak, jak je napsana tazatelem, v podstate nic nedela.

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny