NOVINKA - Online rekvalifikační kurz Python programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: Dynamicke programovanie alebo rozdeluj a panuj?

V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
ivakmetova
Člen
Avatar
ivakmetova:2.12.2014 11:18

Ahojte, pls je toto dynamicke programovanie zhora nadol alebo metoda rozdeluj a panuj? ja to skor vidim na dynamicke,Za kazdu odpoved budem vdacna

public class SierTroj extends JComponent{
private final int velkost;
private final int[][] pole;
private final int n;

public SierTroj(int n) {
setBounds(10, 50, 512, 512);

this.n = n;
this.velkost = (int) Math.pow(2, this.n);
this.pole = new int [velkost][velkost];
}

public void inicializuj(){

for(int i = 0; i < velkost; i++){
for (int j = 0; j < velkost; j++){
if (i == 0 | j == 0){
pole [i][j] = 1;
}
}
}

for(int i = 1; i < velkost; i++){
for (int j = 1; j < velkost; j++){

if (pole [i-1][j] == pole [i][j-1]){

pole [j][i] = 0;
}else{

pole [i][j] = 1;
}
}
}
}

@Override
protected void paintComponen­t(Graphics g) {

g.setColor(Co­lor.white);
g.fillRect(0, 0, getWidth(), getHeight());

for(int i = 0; i < velkost; i++){
for(int j = 0; j < velkost; j++){
if(pole[i][j] == 1){
g.setColor(Co­lor.BLUE);

if(n > 7){
g.filRect(i*1, j*1, 1, 1);
}else if(n > 5){
g.filRect(i*4, j*4, 4, 4);
}else {
g.filRect(i*10, j*10, 10, 10);
}

 
Odpovědět
2.12.2014 11:18
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 1 zpráv z 1.