C Program til at udskrive forskellige mønstre

C Program til at udskrive forskellige mønstre

Her får vi forskellige mønstre og vores opgave er at printe dem i den givne rækkefølge. Men før du går videre, hvis du ikke er bekendt med begrebet loops i C, så tjek artiklen om Loops in C.

Input: Indtast antallet af rækker:7

Output:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1

Program 1:Vis Pascals trekant

I denne metode vil vi bruge faktorformlen til at udskrive Pascals trekant.

Algorithme

  1. Start
  2. Deklarer en variabel siger rækker for at gemme antallet af rækker, som brugeren har indtastet.
  3. Initialiser antallet af rækker.
  4. Brug en for-løkke til at gentage alle rækkerne, dvs. fra 0 til rækker. Rækken skal se ud som for(int i=0;i
  5. Brug en anden løkke i den forrige for-løkke til at udskrive termerne i Pascals trekant. Initialiser løkken fra 0, der går til i, øg 1 i hver iteration.
  6. Kald en funktion for at beregne faktoren.
  7. Inde i den indre løkke skal du bruge formel term =fakta(n) / (faktum(k) * fakta(n-k)); for at udskrive det aktuelle udtryk for pascal-trekanten.
  8. Vis mønsteret
  9. Stop

Nedenfor er koden til det samme.


/* C program to print Pascal triangle up to n rows  */

#include <stdio.h>

long long fact(int n);   // Function definition 

int main()
{
    int n, k, rows, i;    //Declare variables
    long long term;

    printf("Enter number of rows : ");  
    scanf("%d", &rows);    //Initialize the rows
    printf("\n");
    for(n=0; n<rows; n++)
    {
        for(i=n; i<=rows; i++)  //Print 3 spaces 
            printf("%3c", ' ');

        for(k=0; k<=n; k++)    //Term for the rows
        {
            term = fact(n) / (fact(k) * fact(n-k));   //Function Call

            printf("%6lld", term);     //Print the terms
        }

        printf("\n");
    }

    return 0;
}

/*  Function to calculate factorial  */
long long fact(int n)      //Function Definition
{
    long long factorial = 1ll;
    while(n>=1)
    {
        factorial *= n;
        n--;
    }

    return factorial;
}


Indtast antallet af rækker:7
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1

Program 2:Vis Pascals trekant

I denne metode vil vi bruge løkker til at udskrive Pascals trekantmønster.

Algorithme

  1. Start
  2. Angiv antallet af rækker
  3. Initialiser antallet af rækker
  4. Brug tre til løkker til at udskrive mønsteret
  5. Brug den første for-løkke til at iterere til alle rækkerne
  6. Brug den anden for-løkke til at udskrive mellemrummene
  7. Brug den tredje for-løkke til at udskrive mønsteret
  8. Vis mønsteret
  9. Stop.

Nedenfor er koden til det samme.

/*C Program to print Pascal's Triangle*/
#include <stdio.h>

int main() 
{
   int rows, coef = 1;    //Row Declaration
   printf("Enter the number of rows: ");
   scanf("%d", &rows);   //Initialize the rows
    printf("\n");
   for (int i = 0; i < rows; i++) 
   {
      for (int k = 1; k <= rows - i; k++)
         printf("  ");
         
      for (int j = 0; j <= i; j++) 
      {
         if (j == 0 || i == 0)
            coef = 1;
         else
            coef = coef * (i - j + 1) / j;
            
         printf("%4d", coef);
      }
      printf("\n");
   }
   return 0;
}


Indtast antallet af rækker:5
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1

Program 3:Vis Pascals trekant

I denne metode vil vi bruge funktioner til at udskrive Pascals trekant.

Algorithme

  1. Start
  2. Angiv antallet af rækker
  3. Initialiser antallet af rækker
  4. Kald en funktion for at udskrive mønsteret.
  5. Brug tre til løkker til at udskrive mønsteret
  6. Brug den første for-løkke til at iterere til alle rækkerne
  7. Brug den anden for-løkke til at udskrive mellemrummene
  8. Brug den tredje for-løkke til at udskrive mønsteret
  9. Vis mønsteret
  10. Stop.

Nedenfor er koden til det samme.

#include <stdio.h>
void printPattern(int rows, int coef)   //Function Definition
{
 for (int i = 0; i < rows; i++) 
   {
      for (int k = 1; k <= rows - i; k++)
         printf("  ");
         
      for (int j = 0; j <= i; j++) 
      {
         if (j == 0 || i == 0)
            coef = 1;
         else
            coef = coef * (i - j + 1) / j;
            
         printf("%4d", coef);
      }
      printf("\n");
   }
}
int main() 
{
   int rows, coef = 1;    //Row Declaration
   printf("Enter the number of rows: ");
   scanf("%d", &rows);   //Initialize the rows
   printf("\n");
   printPattern(rows,coef);  //Function Call
   return 0;
}


Indtast antallet af rækker:5
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1