Python Program to print the pattern ‘G’

In this article, we will learn how to print the pattern G using stars and white-spaces. Given a number n, we will write a program to print the pattern G over n lines or rows.
Examples:
Input : 7
Output :
***
*
*
* ***
* *
* *
***
Input : 9
Output :
*****
*
*
*
* ***
* *
* *
* *
*****
In this program, we have used the simple logic of iteration over lines to create the pattern G. Please look at the image below which represents the pattern G in the form of a 2-d matrix, where mat[i][j] = ‘ij’: 
 
If we try to analyze this picture with a (row, column) matrix and the circles represent the position of stars in the pattern G, we will learn the steps. Here we are performing the operations column-wise. So for the first line of stars, we set the first if condition, where the row position with 0 and (n-1) won’t get the stars and all other rows from 1 to (n-1), will get the stars. Similarly, for the second, third and fourth column we want stars at the position row = 0 and row = (n-1). The other steps are self-explanatory and can be understood from the position of rows and columns in the diagram.
Below is the implementation of above idea: 
 
Python
| # Python program to print pattern GdefPattern(line):    pat=""    fori inrange(0,line):            forj inrange(0,line):                 if((j ==1andi !=0andi !=line-1) or((i ==0or                i ==line-1) andj > 1andj < line-2) or(i ==((line-1)/2)                andj > line-5andj < line-1) or(j ==line-2and                i !=0andi !=line-1andi >=((line-1)/2))):                  pat=pat+"*"            else:                      pat=pat+" "        pat=pat+""       returnpat # Driver Codeline =7print(Pattern(line)) | 
Output:
***
*
*
* ***
* *
* *
***
Time Complexity: O(n2), where n represents the given input.
Auxiliary Space: O(1), no extra space is required, so it is a constant.
Please refer complete article on Program to print the pattern ‘G’ for more details!
 
				 
					


