คำอธิบายโปรแกรม
สามเหลี่ยมของ Floyd คืออาร์เรย์สามเหลี่ยมมุมฉากของจำนวนธรรมชาติที่ใช้ในการศึกษาด้านวิทยาการคอมพิวเตอร์ ตั้งชื่อตามโรเบิร์ต ฟลอยด์ กำหนดโดยการเติมแถวของสามเหลี่ยมด้วยตัวเลขต่อเนื่องกันโดยเริ่มจาก 1 ที่มุมซ้ายบน
1 15 14 13 12 11 2 3 10 9 8 7 4 5 6 6 5 4 7 8 9 10 3 2 11 12 13 14 15 1 Floyd's Triangle Reverse of Floyd's Triangle
อัลกอริทึม
การพิมพ์สามเหลี่ยมฟลอยด์ −
Accept the number of rows to print the Floyd’s Triangle Print value 1 for the Row 1 Print two values 2 and 3 in the next row Print three values 4, 5 and 6 in the next row Repeat till the number of rows specified
หากต้องการพิมพ์ด้านหลังของ Floyd's Triangle −
Accept the number of rows to print the reverse of Floyd’s Triangle Print the values in the reverse order as specified in the reverse of Floyd’s Triangle
ตัวอย่าง
/*Program to print the Reverse of Floyd's Triangle*/
#include<stdio.h>
int main() {
int r,c=1;
int rows,revrows,r1,c1,d;
clrscr();
printf("Enter number of rows to print the Floyd's Triangle: ");
scanf("%d", &rows);
printf("\n");
for (r=1;r<=(rows*(rows+1))/2;r++){
printf("%d ",r);
if(r==(c*(c+1))/2){
printf("\n");
c++;
}
}
printf("\n\n");
/*Printing the Reverse of Floyd's Triangle*/
printf("Enter number of rows to print the reverse of Floyd's Triangle: ");
scanf("%d",&revrows);
printf("\n\n");
printf("Reverse of Floyd's Triangle\n");
printf("\n\n");
d = (revrows*(revrows+1))/2;
for(r1=revrows;r1>=1;r1--){
for(c1=r1;c1>=1;c1--,d--){
printf("%4d", d);
}
printf("\n");
}
getch();
return 0;
}
ผลลัพธ์
