Wpis z mikrobloga

#naukaprogramowania #java
Pętle tyle o ile rozumiem ale chciałem napisać choinkę i wiem, że trzeb zrobić pętle w pętli
int choinka = 8;
for(int i = 0; i<choinka; i++){
for(int j = 0; j<i; j++){
System.out.print("*");
}
a wynik jest taki

*

*
**
*
**
*****
próbuje rozkminić to ale może ktoś mi rozjaśni. Pętla wykonuje się dopóki j<i ale w sumie zawsze będzie j=i bo zaczynają od tej samej wartości? i=0,j=0. Idziemy od nowa to po inkrementacji i=1,j=1 i tak do 7 O.o ?
  • 9
  • Odpowiedz
@NiePrzystosowanyDoZycia:
int choinka = 8;
for(int i = 0; i<choinka; i++){
System.out.println("pętla zewnętrzna: " + i);
for(int j = 0; j<i; j++){
System.out.println("pętla wewnętrzna: " + j);
System.out.print("*");
}

i zobacz sobie co masz w konsoli, bo pewnie debugować jeszcze nie umiesz.
  • Odpowiedz
@NiePrzystosowanyDoZycia: Najlepiej jakbyś użyj debuggera i sprawdz krok po kroku jak to się wykonuje. Generalnie masz tu 2 petle - nazwę je "i" (ta pierwsza) i "j" (wewnętrzna). Pętla zewnętrzna "i" wykona się dokładnie tyle razy, ile wynosi zmienna choinka i tutaj oznacza to ilość wierszy. Natomiast ta wewnętrzna pętla wykonywana jest dla każdego wiersza (iteracji w zewnętrznej pętli) i wykonuje się dla każdego wiersza tyle razy, ile wierszy jest już
  • Odpowiedz
@NiePrzystosowanyDoZycia: to jak już skumałeś pętle for, to zrób sobie chwilę przerwy od pętli i poszukaj czegoś o debugowaniu. Na start może być to. Poćwicz porządnie, a na wiele pytań będziesz w stanie odpowiedzieć sobie sam.
  • Odpowiedz