Hỏi đáp
Chia sẻ kiến thức, cùng nhau phát triển
hỏi về vòng lặp lồng nhau while và for
04:36 20-10-2021
429 lượt xem
1 bình luận
04:43 20-10-2021
em có đoạn mã tháp hình như thế này ạ
public class giai_thap_hinh {
//hinh 2
public static void main(String[] args) {
/* * * * *
* * * *
* * *
* *
*/
int a =5;
while(a>=1) {for (int b=1; b<=a; b++) {System.out.print("* ");}
a--;
System.out.println();}
}
}
vòng lặp while thì không có gì phải bàn cả , khi khởi tạo vòng lặp for , đoạn này em không hiểu logic của nó như thế nào . bác nào biết giải thích tường minh dùm em dc không ạ , tại xao khi biến b =1 . dòng 1 lại in ra là 5 dấu * cảm ơn các bác ạ
Tại trong vòng lặp for, bạn set điều kiện b<=a, a=5, b=1 thì như thế này:
Lần 1: b=1, b vẫn <= a thì in ra 1 dấu *
Lần 2: b++ (tăng b lên 1): b=2 vẫn <= a, in ra 1 dấu *
Lần 3: b++ (tăng b lên 1): b=3 vẫn <=a, in ra 1 dấu *
Lần 4: b++ (tăng b lên 1): b=4 vẫn <=a, in ra 1 dấu *
Lần 5: b++ (tăng b lên 1): b=5 vẫn <=a, in ra 1 dấu *
Lần 6: b++ (tăng b lên 1): b=6 >a, thoát vòng lặp
=> In ra 5 dấu *
Bạn cứ debug là hiểu nha