ได้รับจำนวน n วาดรูปธงชี้ (Arrow) ด้วยดอกจัน * ความสูงสูงสุด n ดอกจัน
ตัวอย่าง n=4
* ** *** **** *** ** *
ตัวอย่าง n=3
* ** *** ** *
แนวทาง
- รับค่า n
- ส่วนบน: พิมพ์ช่องว่าง n-i แล้วตามด้วย * จำนวน i (i=1 ถึง n)
- ส่วนล่าง: พิมพ์ช่องว่าง i-1 แล้วตามด้วย * จำนวน n-i+1 (i=2 ถึง n)
อัลกอริทึม
Start
ฟังก์ชัน arrow(int num):
// ส่วนบน
for i = 1 ถึง num:
for j = i ถึง num-1: print space
for j = i ถึง num: print *
newline
// ส่วนล่าง
for i = 2 ถึง num:
for j = 1 ถึง i-1: print space
for j = 1 ถึง i: print *
newline
main(): num = 4 เรียก arrow(num)
Stop
โค้ดตัวอย่าง
#include <stdio.h>
int arrow(int num) {
int i, j;
// ส่วนบน
for (i = 1; i <= num; i++) {
for (j = i; j < num; j++) printf(" ");
for (j = i; j <= num; j++) printf("*");
printf("\n");
}
// ส่วนล่าง
for (i = 2; i <= num; i++) {
for (j = 1; j < i; j++) printf(" ");
for (j = 1; j <= i; j++) printf("*");
printf("\n");
}
return 0;
}
int main() {
int num = 4;
arrow(num);
return 0;
}
ผลลัพธ์
* ** *** **** *** ** *