Qn: Write the C program logic to print star * as right pyramid and left pyramid as follows
Type-1          Type-2
                
*                       *
* *                   * *
* * *               * * *
* * * *           * * * *
* * * * *       * * * * *
* * * *           * * * *
* * *               * * *
* *                   * *
*                       *
-By Admin, Last Update On 28th May,2019 06:31 pm

Type-1

Type-1-ஐ நன்றாக கவனித்தால் இதை கீழ்க்கண்டவாறு இரண்டாக பிரிக்கலாம்.

part-1
*        
* *      
* * *    
* * * *  
* * * * *


* * * *
* * *  
* *    
* 
part-2  

n=9 rows, அதோடு part-1,part-2 ஆகிய இரண்டும் ஒன்று சேர்ந்த தொக்குப்பு தான் இந்த Type-1. ஆகையால் இவ்விரண்டின் logic-ஐயும் ஒன்றாக சேர்த்தல் நமக்கு தேவையான output கிடைத்துவிடும்.

Part-1: இதில் 5 rows இடம் பெற்றுள்ளது. ஆகையால் row ஆனது 1-லிருந்து துவங்கி n-ல் முடியவேண்டும்.
for(row=1;row<=n;row++){
    for(col=1;col<=row;col++){
        printf("*");
    }
    printf("\n");
}
Part-2: இதில் 4 rows இடம் பெற்றுள்ளது. ஆகையால் row ஆனது (n-1)-லிருந்து துவங்கி 1-ல் முடியவேண்டும்.
for(row=n-1;row>=1;row--){
    for(col=1;col<=row;col++){
      printf("*");
    }
    printf("\n");
}

இபொழுது part-1 part-2 ஆகிய இரண்டையும் ஒன்று சேர்க்கவேண்டும்.

Complete Code

#include<stdio.h>
#include<conio.h>
int main(){
  int n,row,col;
  printf("Enter how many rows you want: ");
  scanf("%d",&n);
  //part-1
  for(row=1;row<=n;row++){
      for(col=1;col<=row;col++){
         printf("*");
      }
      printf("\n");
  }
  //part-2
  for(row=n-1;row>=1;row--){
      for(col=1;col<=row;col++){
        printf("*");
      }
      printf("\n");
  }
return 0;
}
Output:
Enter how many rows you want: 5
*        
* *      
* * *    
* * * *  
* * * * *
* * * *  
* * *    
* *      
*        

Type-2

Type-2-ஐ நன்றாக கவனித்தால் இதை கீழ்க்கண்டவாறு இரண்டாக பிரிக்கலாம்.

part-1
        *
      * *
    * * *
  * * * *
* * * * *


  * * * *
    * * *
      * *
        *

part-2

மேலே உள்ள இரண்டிற்கான code-ஐ ஒன்றாக சேர்த்தால் தேவையான output கிடைத்துவிடும்.

Complete Program

#include<stdio.h>
#include<conio.h>
int main(){
  int n,row,col,s;
  printf("Enter how many rows you want: ");
  scanf("%d",&n);
  //part-1
  for(row=1;row<=n;row++){
      for(s=1;s<=(n-row);s++){
         printf(" ");
      }
      for(col=1;col<=row;col++){
         printf("*");
      }
      printf("\n");
  }
  //part-2
  for(row=n-1;row>=1;row--){
      for(s=1;s<=(n-row);s++){
          printf(" ");
      }
      for(col=1;col<=row;col++){
        printf("*");
      }
      printf("\n");
  }
return 0;
}
Output:
Enter how many rows you want: 5
        *
      * *
    * * *
  * * * *
* * * * *
  * * * *
    * * *
      * *
        *

Pgcomments

Comments