Alphabet Rangoli

Sort by

recency

|

1388 Discussions

|

  • + 0 comments

    if you guies want a math, no list and pure logical then can reffer to this:

    def print_rangoli(size):
        # your code goes here
        p = 96 + size
        a = ( size - 1 ) * 2 + 1
        w = ( size - 1 ) * 4 + 1
        
        for i in range(a):
            ptrn = ""
            
            if i < size:
                itr = i
                v = p - i
            else:
                itr = a - i - 1
                v = p + i + 1 - a
            
            for j in range(itr):
                ptrn += chr(v-j+itr) + "-"
            
            ptrn += chr(v) + ptrn[::-1]
            print(ptrn.center(w,"-"))
    
    if __name__ == '__main__':
        n = int(input())
        print_rangoli(n)
    
  • + 0 comments

    Am I dumb?

    alph = list('abcdefghijklmnopqrstuvwxyz')
        w = ((size*2) - 1)*2 - 1
        
        print(alph[size-1].center(w, '-'))
        for i in range(1, size):
            print(("-".join(alph[size-1 : size-1-i : -1]) + '-' + "-".join(alph[size-1-i : size])).center(w, '-'))
            
        for i in range(size-2, 0, -1):
            print(("-".join(alph[size-1 : size-1-i : -1]) + '-' + "-".join(alph[size-1-i : size])).center(w, '-'))
        if size > 1:
            print(alph[size-1].center(w, '-'))
    
  • + 0 comments

    def print_rangoli(size): x = 1

    y = int(size)
    for letter in range(1,size*2):
        if x<size or x==size:
            alpha_list = list(chr(i) for i in range((96+size),(96+size-x),-1))
            alpha_list_reverse = alpha_list.copy()
            alpha_list_reverse.reverse()
            for i in alpha_list_reverse[1:]:
                alpha_list.append(i)
            aplha_string = "-".join(alpha_list)
            print(aplha_string.center((size*4)-3,"-"))
            x +=1
        elif x>size:
            y-=1
            alpha_list = list(chr(i) for i in range((96+size),(96+size-y),-1))
            alpha_list_reverse = alpha_list.copy()
            alpha_list_reverse.reverse()
            for i in alpha_list_reverse[1:]:
                alpha_list.append(i)
            aplha_string = "-".join(alpha_list)
            print(aplha_string.center((size*4)-3,"-"))
    

    if name == 'main': n = int(input()) print_rangoli(n)

  • + 0 comments

    def print_rangoli(size): #upper triangle for i in range(1,size+1): print("-"(2(size-i)),end="") if(i==1): print(chr(97+size-i),end="") else: for j in range(1,i+1): print(chr(97+size-j)+"-",end="") for j in range(i-1,0,-1): if(j==1): print(chr(97+size-j),end="") break print(chr(97+size-j)+"-",end="") print("-"(2(size-i))) #lower triangle for i in range(size-1,0,-1): print("-"(2(size-i)),end="") if(i==1): print(chr(97+size-i),end="") else: for j in range(1,i+1): print(chr(97+size-j)+"-",end="") for j in range(i-1,0,-1): if(j==1): print(chr(97+size-j),end="") break print(chr(97+size-j)+"-",end="") print("-"(2(size-i)))

  • + 0 comments
    def build_row(i, size):
        left = [chr(96 + size - k) for k in range(i + 1)]
        right = [chr(96 + size - k) for k in range(i - 1, -1, -1)]
        return "-".join(left + right).center(size * 4 - 3, "-")
    
    size = int(input())
    rows = [build_row(i, size) for i in range(size)]
    print("\n".join(rows + rows[-2::-1]))