thaiall logomy background ทำซ้ำหนึ่งชั้น หลายชั้น โดยใช้ for ซ้อน for ด้วยไพทอน
my town
ตัวอย่างโค้ด ใน Console บน Developer tools ของ Chrome เป็นอีกเครื่องมือเพื่อเรียนรู้ที่พร้อมให้ใช้งานได้ทันทีบนเครื่องคอมพิวเตอร์

for ซ้อน for ด้วยไพทอน

for ซ้อน for ด้วยไพทอน คือ การควบคุมการทำงานให้มีการทำซ้ำซ้อนการทำซ้ำ เพื่อให้ได้ผลลัพธ์ตามที่ต้องการ โดยประยุกต์มาจากเลขอนุกรม มาสร้างโจทย์ปิรามิดของตัวเลขอย่างง่าย สำหรับฝึกหัดการเขียนโปรแกรม
รหัสต้นฉบับ | TeachPro | วิทยาการคำนวณ | for ซ้อน for | เทคโนโลยี
ทำซ้ำหนึ่งชั้น หลายชั้น โดยใช้ for ซ้อน for ด้วยไพทอน
ช่วงสิงหาคม 2562 ได้รับข่าวสารเรื่อง coding ทำให้นึกถึงการชวนเด็ก ๆ คิดแก้ปัญหา การพิมพ์เลขอย่างมีลำดับ มีรูปแบบตายตัวแบบเชิงเส้นตรง มองตัวเลขเป็นแถว นับหนึ่ง สอง สาม เรื่อยไป บางทีก็นับย้อนกลับ เช่น สาม สอง หนึ่ง นับวนไปวนมา หรือจะให้คอมพิวเตอร์ช่วยนับ พอเข้าใจว่าโจทย์ต้องการเรียงเลขรูปอะไร ก็ทำการ coding คือ การเขียนคำสั่งด้วยภาษาคอมพิวเตอร์ เพื่อสั่งงานคอมพิวเตอร์ ให้ทำงานตามที่เราต้องการ เช่น สั่งให้พิมพ์เลขเป็นรูปสี่เหลี่ยม หรือสามเหลี่ยม เริ่มต้นอาจนับหนึ่งยากหน่อย แต่ถ้านับหนึ่ง สอง สามหลายรอบก็เชื่อว่าจะมีทักษะในการสั่งพิมพ์เลขแบบเรียงลำดับเพิ่มขึ้น นี่คือที่มาของ "โจทย์พีระมิดตัวเลข"

ตัวอย่างใช้จริง และ 36 พีระมิด
การใช้ for ซ้อน for ด้วย js
ทดสอบ Python ใน tutorialspoint.com
onlinegdb.com
tutorialspoint.com
learnpython.org
การเขียนโปรแกรมในปัจจุบัน หากต้องการทดสอบ/จำลองการแปลคำสั่งหรือโปรแกรม และแสดง output โดยไม่ติดตั้งตัวแปลภาษาในเครื่องคอมพิวเตอร์ของเราก็มีทางเลือกอื่น อาทิ นำ script ที่เขียนขึ้น ส่งไปทดสอบในเว็บไซต์ของผู้ให้บริการ เช่น tutorialspoint.com ซึ่งนักเรียน/นักศึกษา ที่ยังไม่ได้พัฒนาโปรแกรมเพื่อใช้งานจริง แต่ต้องการทดสอบ script ก็เข้าไปใช้บริการได้
เช่น print("hello world")
แบบที่ 1 : บรรทัดเดียว
1
2
3
4
5
for i in range(1,6): print(i)
แบบที่ 2 : ตัดบรรทัด และ step = 2
1
3
5
for i in range(1,6,2): 
  print(i)
แบบที่ 3 :
1
3
5
7
9
for i in range(1,10,2): 
  print(i)
แบบที่ 4
0
1
2
3
4
e
n
d
for x in range(5):
  print(x)
else:
  print("e")
  print("n")
  print("d")
แบบที่ 5
0
1
0
1
0
1
for x in range(3):
  for y in range(2):
    print (y)
แบบที่ 6
0*1*
0*1*
0*1*
for x in range(3):
  for y in range(2):
    print (y,end="")      
    print ("*",end="")
  print()
แบบที่ 7
0 *1 *
0 *1 *
0 *1 *
for x in range(3):
  for y in range(2):
    print (y,"*",end="")
  print()
แบบที่ 8
0 0
1 0
0 1
1 1
0 2
1 2
for x in range(3):
  for y in range(2):
    print (y , x)
แบบที่ 9
00
10
01
11
02
12
for x in range(3):
  for y in range(2):
    print ('%d%d' % (y,x))
แบบที่ 10
000110112021
for x in range(3):
  for y in range(2):
    print ('%d%d' % (x,y),end="")
แบบที่ 11
00.01.                                                                                                                                                       
10.11.                                                                                                                                                       
20.21.
for x in range(3):
  for y in range(2):
    print ('%d%d' % (x,y),end=".")
  print()
แบบที่ 12
*00*01+                                                                                                                                                     
*10*11+                                                                                                                                                     
*20*21+
for x in range(3):
  for y in range(2):
    print ('*%d%d' % (x,y),end="")
  print("+")
แบบที่ 13
*                                                                                                                                                            
**                                                                                                                                                           
***                                                                                                                                                          
****                                                                                                                                                         
*****
for x in range(1,6):
  for y in range(x):
    print ("*",end="")
  print()
แบบที่ 14
*****                                                                                                                                                        
****                                                                                                                                                         
***                                                                                                                                                          
**                                                                                                                                                           
* 
for x in range(5,0,-1):
  for y in range(x):
    print ("*",end="")
  print()
แบบที่ 15
01234                                                                                                                                                        
0123                                                                                                                                                         
012                                                                                                                                                          
01                                                                                                                                                           
0 
for x in range(5,0,-1):
  for y in range(x):
    print (y,end="")
  print()
แบบที่ 16
01010                                                                                                                                                        
0101                                                                                                                                                         
010                                                                                                                                                          
01                                                                                                                                                           
0 
for x in range(5,0,-1):
  for y in range(x):
    print (y % 2,end="")
  print()
แบบที่ 17
*1                                                                                                                                                           
**2                                                                                                                                                          
***3                                                                                                                                                         
****4                                                                                                                                                        
*****5
for x in range(1,6):
  for y in range(x):
    print ("*",end="")
  print(x,end="")
  print()
แบบที่ 18
*****1                                                                                                                                                       
****2                                                                                                                                                        
***3                                                                                                                                                         
**4                                                                                                                                                          
*5 
for x in range(1,6):
  for y in range(6 - x):
    print ("*",end="")
  print(x,end="")
  print()
แบบที่ 19
*****1                                                                                                                                                       
****222                                                                                                                                                      
***33333                                                                                                                                                     
**4444444                                                                                                                                                    
*555555555
for x in range(1,6):
  for y in range(6 - x):
    print ("*",end="")
  for y in range(x * 2 - 1):
    print(x,end="")
  print()
แบบที่ 20
     1                                                                                                                                                       
    12                                                                                                                                                       
   123                                                                                                                                                       
  1234                                                                                                                                                       
 12345
for x in range(1,6):
  for y in range(6 - x):
    print (" ",end="")
  for y in range(1,x + 1):
    print(y,end="")
  print()
แบบที่ 21
     1                                                                                                                                                       
    121                                                                                                                                                      
   12321                                                                                                                                                     
  1234321                                                                                                                                                    
 123454321
for x in range(1,6):
  for y in range(6 - x):
    print (" ",end="")
  for y in range(1,x + 1):
    print(y,end="")
  for y in range(2,x + 1):
    print(x - y + 1,end="")
  print()
แบบที่ 22
     1                                                                                                                                                       
    12                                                                                                                                                      
   123                                                                                                                                                     
  1234                                                                                                                                                    
 12345                                                                                                                                                   
  1234                                                                                                                                                    
   123                                                                                                                                                     
    12                                                                                                                                                      
     1
for x in range(1,6):
  for y in range(6 - x):
    print (" ",end="")
  for y in range(1,x + 1):
    print(y,end="")
  print()
for x in range(4,0,-1):
  for y in range(6 - x):
    print (" ",end="")
  for y in range(1,x + 1):
    print(y,end="")
  print()
แบบที่ 23
     1                                                                                                                                                       
    121                                                                                                                                                      
   12321                                                                                                                                                     
  1234321                                                                                                                                                    
 123454321                                                                                                                                                   
  1234321                                                                                                                                                    
   12321                                                                                                                                                     
    121                                                                                                                                                      
     1
for x in range(1,6):
  for y in range(6 - x):
    print (" ",end="")
  for y in range(1,x + 1):
    print(y,end="")
  for y in range(2,x + 1):
    print(x - y + 1,end="")
  print()
for x in range(4,0,-1):
  for y in range(6 - x):
    print (" ",end="")
  for y in range(1,x + 1):
    print(y,end="")
  for y in range(2,x + 1):
    print(x - y + 1,end="")  
  print()
แบบที่ 24
123*321                                                                    
23***32                                                                    
3*****3                                                                    
for x in range(1,4):
  for y in range(x,4):
    print (y,end="")
  for y in range(x * 2 - 1):
    print("*",end="")
  for y in range(1,5 - x):
    print(4 - y,end="")
  print()
แบบที่ 25
123*321                                                                    
23***32                                                                    
3*****3                                                                    
23***32                                                                    
123*321
+ teachpro.htm : 36
for x in range(1,4):
  for y in range(x,4):
    print (y,end="")
  for y in range(x * 2 - 1):
    print("*",end="")
  for y in range(1,5 - x):
    print(4 - y,end="")
  print()
for x in range(2,0,-1):
  for y in range(x,4):
    print (y,end="")
  for y in range(x * 2 - 1):
    print("*",end="")
  for y in range(1,5 - x):
    print(4 - y,end="")
  print()
Thaiall.com