Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

โปรแกรมพิมพ์สามเหลี่ยมของ Reverse Floyd ใน C


คำอธิบายโปรแกรม

สามเหลี่ยมของ 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;
}

ผลลัพธ์

โปรแกรมพิมพ์สามเหลี่ยมของ Reverse Floyd ใน C