Perl วงซ้อนกัน
ภาษา Perl ช่วยให้การใช้ห่วงอีกภายในห่วงด้านล่างแสดงให้เห็นถึงหลายตัวอย่างแสดงให้เห็นถึงแนวคิดนี้
ไวยากรณ์
ซ้อนกันสำหรับไวยากรณ์ห่วง:
for ( init; condition; increment ){ for ( init; condition; increment ){ statement(s); } statement(s); }
ซ้อนกันในขณะที่วงไวยากรณ์:
while(condition){ while(condition){ statement(s); } statement(s); }
ซ้อนกันทำ ... ในขณะที่งบห่วงไวยากรณ์:
do{ statement(s); do{ statement(s); }while( condition ); }while( condition );
จนกระทั่งไวยากรณ์วงที่ซ้อนกัน:
until(condition){ until(condition){ statement(s); } statement(s); }
ซ้อนไวยากรณ์ห่วง foreach:
foreach $a (@listA){ foreach $b (@listB){ statement(s); } statement(s); }
ตัวอย่าง
#!/usr/bin/perl $a = 0; $b = 0; # 外部循环 while($a < 3){ $b = 0; # 内部循环 while( $b < 3 ){ print "a = $a, b = $b\n"; $b = $b + 1; } $a = $a + 1; print "a = $a\n\n"; }
โปรแกรมข้างต้นผลลัพธ์คือ:
a = 0, b = 0 a = 0, b = 1 a = 0, b = 2 a = 1 a = 1, b = 0 a = 1, b = 1 a = 1, b = 2 a = 2 a = 2, b = 0 a = 2, b = 1 a = 2, b = 2 a = 3