แจกโค้ดตัวอย่างภาษา java ในการแสดงผลตัวเลข 1 ถึง 9 เป็นรูปสามเหลี่ยม แบบชิดขวา ซึ่งบรรทัดแรกจะแสดงเลข 1 2 3 4 5 6 7 8 9 และบรรทัดสุดท้ายจะแสดงเลข 1 เพียงเลขเดียว โค้ดนี้จะใช้ลูป for ในการทำงานแบบวนซ้ำ จะประกอบด้วย
for
ทำซ้ำจำนวนบรรทัดfor
ทำซ้ำสำหรับพื้นที่ว่างfor
ทำซ้ำในการแสดงผลตัวเลข แบบลดจำนวนลง
การแสดงผลที่ต้องการ
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7
1 2 3 4 5 6
1 2 3 4 5
1 2 3 4
1 2 3
1 2
1
ซูโดโค้ด (Pseudo Code)
ซูโดโค้ดสำหรับโปรแกรมนี้ ซึ่งสร้างรูปแบบของตัวเลขในลักษณะของพีระมิดที่ลดลงตามแถว สามารถอธิบายได้ดังนี้:
- กำหนดค่าตัวแปร
max_number
เท่ากับ 9 เพื่อใช้เป็นจำนวนสูงสุดของเลขในแต่ละแถวและจำนวนรอบที่ต้องทำในลูปหลัก - สร้างลูปแรก (ลูปหลัก) ที่ทำการวนซ้ำทั้งหมด
max_number
ครั้ง โดยตัวแปรควบคุมคือi
(เริ่มจาก 0 ถึงmax_number - 1
) ซึ่งแต่ละค่าของi
จะเป็นตัวกำหนดจำนวนแถวและระยะห่างของช่องว่าง - ภายในลูปแรก:
- สร้างลูปที่สองเพื่อพิมพ์ช่องว่างตามจำนวนของตัวแปร
i
(ช่องว่างเพิ่มขึ้นเมื่อi
เพิ่ม) - สร้างลูปที่สามเพื่อพิมพ์ตัวเลขเรียงจาก 1 ถึง
max_number - i
(จำนวนตัวเลขในแต่ละแถวลดลงตามค่าi
)
- สร้างลูปที่สองเพื่อพิมพ์ช่องว่างตามจำนวนของตัวแปร
- พิมพ์บรรทัดว่าง (ขึ้นบรรทัดใหม่) หลังจากพิมพ์แต่ละแถวเสร็จสิ้น
เริ่มต้น
กำหนด max_number = 9
ทำซ้ำ i จาก 0 ถึง max_number - 1:
ทำซ้ำ space ตั้งแต่ 0 ถึง i-1:
พิมพ์ช่องว่าง " "
ทำซ้ำ j ตั้งแต่ 1 ถึง max_number - i:
พิมพ์ตัวเลข j
ขึ้นบรรทัดใหม่
สิ้นสุด
ตัวอย่างโค้ด Java
public class Comscidev {
public static void main(String[] args) {
int max_number = 9;
for(int i = 0; i < max_number; i++) {
for(int space = 0; space < i; space++) {
System.out.print(" ");
}
for(int j = 1; j <= max_number - i; j++) {
System.out.printf(" %d", j);
}
System.out.println();
}
}
}
อธิบายเพิ่มเติม
ตัวแปร max_number
ในบรรทัดที่ 5 กำหนดให้มีตัวเลขที่ต้องการแสดงผลได้สูงสุดคือเลขใด สามารถเปลี่ยนเป็นตัวเลขอื่นได้ หากกำหนดให้ ตัวแปร max_number = 5
ก็จะแสดงผลได้ดังนี้
1 2 3 4 5
1 2 3 4
1 2 3
1 2
1