Diskuze: Trojuhelnik z cisel, java
V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 4 zpráv z 4.
V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.
Podoba trojúhelníku bude vždy známa, bude-li známa jeho velikost (počet řádek). Je tedy zbytečné si jej ukládat do 2D pole. Trojúhelník lze tedy rovnou vygenerovat. Funkce bude následovná a pochopení její činnosti je triviální.
void printTriangle(int size) {
for (int i = 0; i < size; i++) {
for (int j = 0; j <= i; j++) printf("%d", j);
putchar('\n');
}
}
public void createTriangle2dArray(){
int[][] multi = {{1,2,3,4},
{5,6,7,8},
{9,10,11,12},
{13,14,15,16}}; //vytvoření a inicializace 2D pole "multi"
int[][]triangle = new int [16][]; //vytvoření a inicializace 2D pole "triangle"
for(int row=0; row<triangle.length; row++){ //procházení 2D pole po řádcích
triangle[row] = new int[row+1]; //do řádku vloží nové jednorozmerné pole velikosti vždy o jedno větší než je row v daném kroku
for(int i=0; i< (row+1); i++){ //prochází sloupce jednorozměrného pole
triangle[row][i] = i; //vloží do 2D pole [radek][sloupec] => [0][0] = 0, [1][0] = 0, [1][1] = 1, [2][0] = 0, [2][1] = 1, [2][2] = 2 ...
}
}
print2DIntArray(triangle);
}
public void print2DIntArray(int [][]multi){ //metoda příjmajíci parametr 2D pole
for(int[] outer : multi){ //cyklus k procházení 2D pole -> do proměnné "outer" se postupně nasává hodnota z 2D pole
if(outer==null){ //jestliže nasáta hodnota je nulová
System.out.print("null"); //vytiskne null
}else{ // v opačném případě
for(int inner : outer){ //cyklus prochází jednorozměrné pole "outer" a do proměnné "inner" postupně nasává hodnotu
System.out.print(inner + ","); //vytiskne se nasáta hodnota do proměnné "inner" oddělená čárkou
}
}
System.out.println(""); //odřádkováni
}
}
programujte.com/forum/vlakno/194517-trojuhelnik-z-cisel-z-pole/
Zobrazeno 4 zpráv z 4.