Python program to print the Inverted heart pattern
Last Updated :
05 Aug, 2022
Improve
Let us see how to print an inverted heart pattern in Python.
Example:
Input: 11 Output: * *** ***** ******* ********* *********** ************* *************** ***************** ******************* ********************* ********* ******** ******* ****** ***** **** Input: 15 Output: * *** ***** ******* ********* *********** ************* *************** ***************** ******************* ********************* *********************** ************************* *************************** ***************************** ************* ************ *********** ********** ********* ******** ******* ******
Approach:
- Determine the size of the heart.
- Print an inverted triangle with size number of rows.
- Print the rest of the heart in 4 segments inside another loop.
- Print the white space right-triangle at the beginning.
- Print the first trapezium with stars.
- Print the white space triangle.
- Print the second trapezium with stars.
# determining the size of the heart
size = 15
# printing the inverted triangle
for a in range(0, size):
for b in range(a, size):
print(" ", end = "")
for b in range(1, (a * 2)):
print("*", end = "")
print("")
# printing rest of the heart
for a in range(size, int(size / 2) - 1 , -2):
# printing the white space right-triangle
for b in range(1, size - a, 2):
print(" ", end = "")
# printing the first trapezium
for b in range(1, a + 1):
print("*", end = "")
# printing the white space triangle
for b in range(1, (size - a) + 1):
print(" ", end = "")
# printing the second trapezium
for b in range(1, a):
print("*", end = "")
# new line
print("")
Output:
* *** ***** ******* ********* *********** ************* *************** ***************** ******************* ********************* *********************** ************************* *************************** ***************************** ************* ************ *********** ********** ********* ******** ******* ******
Time complexity: O(S2) for given input size S
Auxiliary Space: O(1)