19
Program to Print X Star Pattern in C, C++, and Python
Give the rows of the pattern the task is to print X star Pattern in C, C++, and Python.
Examples:
Example1:
Input:
Given number of rows =10
Output:
* * * * * * * * * * * * * * * * * * * *
Example2:
Input:
Given number of rows =10 Given character to print='@'
Output:
Enter some random number of rows = 10 Enter some random character = @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @
Program to Print X Star Pattern in C, C++, and Python
Method #1: Using For Loop (Star Character)
Approach:
- Give the number of rows of the x pattern as static input and store it in a variable.
- Loop from 0 to the number of rows using For loop.
- Loop from 0 to the number of rows using another For loop(Inner For loop).
- Check if the parent loop iterator value is equal to the inner loop iterator value or if the inner loop iterator value is equal to the number of rows-parent loop iterator value-1 using If conditional Statement.
- Print the star character with space if the condition is true.
- Else print space character.
- Print the newline character after the end of the inner For loop.
- The Exit of the program.
1) Python Implementation
Below is the implementation:
# Give the number of rows of the x pattern as static input and store it in a variable. xrows=10 #Loop from 0 to the number of rows using For loop. for m in range(0, xrows): # Loop from 0 to the number of rows using another For loop(Inner For loop). for n in range(0, xrows): '''Check if the parent loop iterator value is equal to the inner loop iterator value or if the inner loop iterator value is equal to the number of rows-parent loop iterator value-1 using If conditional Statement.''' if(m==n or n==xrows - 1 - m): #Print the star character with space if the condition is true. print('*',end=' ') else: #Else print space character. print(' ',end=' ') #Print the newline character after the end of the inner For loop. print()
Output:
* * * * * * * * * * * * * * * * * * * *
2) C++ Implementation
Below is the implementation:
#include <iostream> using namespace std; int main() { // Give the number of rows of the x pattern as static // input and store it in a variable. int xrows = 10; // Loop from 0 to the number of rows using For loop. for (int m = 0; m < xrows; m++) { // Loop from 0 to the number of rows using another // For loop(Inner For loop). for (int n = 0; n < xrows; n++) { /*Check if the parent loop iterator value is equal to the inner loop iterator value or if the inner loop iterator value is equal to the number of rows-parent loop iterator value-1 using If conditional Statement.*/ if (n == m or n == (xrows - m - 1)) { // Print the star character with space if // the condition is true. cout << "* "; } else { // Else print space character. cout << " "; } } // Print the newline character after the end of // the inner For loop. cout << endl; } return 0; }
Output:
* * * * * * * * * * * * * * * * * * * *
3) C Implementation
Below is the implementation:
#include <stdio.h> int main() { // Give the number of rows of the x pattern as static // input and store it in a variable. int xrows = 10; // Loop from 0 to the number of rows using For loop. for (int m = 0; m < xrows; m++) { // Loop from 0 to the number of rows using another // For loop(Inner For loop). for (int n = 0; n < xrows; n++) { /*Check if the parent loop iterator value is equal to the inner loop iterator value or if the inner loop iterator value is equal to the number of rows-parent loop iterator value-1 using If conditional Statement.*/ if (n == m || n == (xrows - m - 1)) { // Print the star character with space if // the condition is true. printf("* "); } else { // Else print space character. printf(" "); } } // Print the newline character after the end of // the inner For loop. printf("\n"); } return 0; }
Output:
* * * * * * * * * * * * * * * * * * * *
Method #2: Using For Loop (User Character)
Approach:
- Give the number of rows of the x pattern as user input and store it in a variable.
- Give the character to print as user input and store it in a variable.
- Loop from 0 to the number of rows using For loop.
- Loop from 0 to the number of rows using another For loop(Inner For loop).
- Check if the parent loop iterator value is equal to the inner loop iterator value or if the inner loop iterator value is equal to the number of rows-parent loop iterator value-1 using If conditional Statement.
- Print the given character with space if the condition is true.
- Else print space character.
- Print the newline character after the end of the inner For loop.
- The Exit of the program.
1) Python Implementation
- Give the number of rows as user input using int(input()) and store it in a variable.
- Give the Character as user input using input() and store it in another variable.
Below is the implementation:
# Give the number of rows as user input using int(input()) and store it in a variable. xrows = int(input( 'Enter some random number of rows = ')) # Give the Character as user input using input() and store it in another variable. givencharacter = input('Enter some random character = ') # Loop from 0 to the number of rows using For loop. for m in range(0, xrows): # Loop from 0 to the number of rows using another For loop(Inner For loop). for n in range(0, xrows): '''Check if the parent loop iterator value is equal to the inner loop iterator value or if the inner loop iterator value is equal to the number of rows-parent loop iterator value-1 using If conditional Statement.''' if(m == n or n == xrows - 1 - m): # Print the given character with space if the condition is true. print(givencharacter, end=' ') else: # Else print space character. print(' ', end=' ') # Print the newline character after the end of the inner For loop. print()
Output:
Enter some random number of rows = 10 Enter some random character = @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @
2) C++ Implementation
- Give the number of rows as user input using cin and store it in a variable.
- Give the Character as user input using cin and store it in another variable.
Below is the implementation:
#include <iostream> using namespace std; int main() { // Give the number of rows // as user input using cin and store it in a // variable. int xrows; char givencharacter; cout << "Enter some random number of rows = " << endl; cin >> xrows; // Give the Character as user input using cin and store // it in another variable. cout << "Enter some random character = " << endl; cin >> givencharacter; cout << endl; // Loop from 0 to the number of rows using For loop. for (int m = 0; m < xrows; m++) { // Loop from 0 to the number of rows using another // For loop(Inner For loop). for (int n = 0; n < xrows; n++) { /*Check if the parent loop iterator value is equal to the inner loop iterator value or if the inner loop iterator value is equal to the number of rows-parent loop iterator value-1 using If conditional Statement.*/ if (n == m || n == (xrows - m - 1)) { // Print the given character with space if // the condition is true. cout << givencharacter << " "; } else { // Else print space character. cout << " "; } } // Print the newline character after the end of // the inner For loop. cout << endl; } return 0; }
Output:
Enter some random number of rows = 10 Enter some random character = @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @
3) C Implementation
- Give the number of rows as user input using scanf and store it in a variable.
- Give the Character as user input using scanf and store it in another variable.
Below is the implementation:
#include <stdio.h> int main() { // Give the number of rows // as user input using scanf and store it in a // variable. int xrows; char givencharacter; // Give the Character as user input using scanf and // store it in another variable. scanf("%d", &xrows); scanf("%c", &givencharacter); printf("\n"); // Loop from 0 to the number of rows using For loop. for (int m = 0; m < xrows; m++) { // Loop from 0 to the number of rows using another // For loop(Inner For loop). for (int n = 0; n < xrows; n++) { /*Check if the parent loop iterator value is equal to the inner loop iterator value or if the inner loop iterator value is equal to the number of rows-parent loop iterator value-1 using If conditional Statement.*/ if (n == m || n == (xrows - m - 1)) { // Print the given character with space if // the condition is true. printf("%c", givencharacter); } else { // Else print space character. printf(" "); } } // Print the newline character after the end of // the inner For loop. printf("\n"); } return 0; }
Output:
10@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @
19