Skip to content
Related Articles

Related Articles

Python Program to print digit pattern

Improve Article
Save Article
Like Article
  • Difficulty Level : Basic
  • Last Updated : 31 Dec, 2020

The program must accept an integer N as the input. The program must print the desired pattern as shown in the example input/ output.

Examples:

Input : 41325
Output :
|****
|*
|***
|**
|*****
Explanation: for a given integer print the number of *’s that are equivalent to each digit in the integer. Here the first digit is 4 so print four *sin the first line. The second digit is 1 so print one *. So on and the last i.e., the fifth digit is 5 hence print five *s in the fifth line.

Input : 60710
Output :
|******
|
|*******
|*
|

Approach
Read the input
For each digit in the integer print the corresponding number of *s
If the digit is 0 then print no *s and skip to the next line




# function to print the pattern
def pattern(n):
  
    # traverse through the elements
    # in n assuming it as a string
    for i in n:
  
        # print | for every line
        print("|", end = "")
  
        # print i number of * s in 
        # each line
        print("*" * int(i))
  
# get the input as string        
n = "41325"
pattern(n)
Output:
|****
|*
|***
|**
|*****


Alternate solution that takes integer as input :




n = 41325
x = []
while n>0:
    x.append(n%10)
    n //= 10
for i in range(len(x)-1,-1,-1):
    print('|'+x[i]*'*')
  
# code contributed by Baivab Dash
Output:
|****
|*
|***
|**
|*****

My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!