Open In App

Program to print modified Binary triangle pattern

Improve
Improve
Like Article
Like
Save
Share
Report

Given an integer N, the task is to print the modified binary tree pattern.
 

In Modified Binary Triangle Pattern, the first and last element of a Nth row are 1 and the middle (N – 2) elements are 0.

Examples: 
 

Input: N = 6 
Output: 

11 
101 
1001 
10001 
100001
Input: N = 3 
Output: 

11 
101 
 

 

Approach: From the above examples, it can be observed that, for each row N: 
 

  • 1st and Nth element is a 1
  • and elements 2 to (N-1) are 0

Therefore an algorithm can be developed to print such pattern as: 
 

  • Run a loop from 1 to N using a loop variable i, which denotes the row number of the triangle pattern.
  • For each row i, run a loop from 1 to i, using a loop variable j, which denotes the number in each row.
  • In each iteration of j, check if j is 1 or i. If either of it true, print 1.
  • If none of the case is true for j, then print 0
  • Increment the value of j by 1 after each iteration
  • When the j loop has completed successfully, we have printed a row of the pattern. Therefore change the output to the next line by printing a next line.
  • Increment the value of i and repeat the whole process till N rows has been printed successfully.

Below is the implementation of the above approach:
 

C++




// C++ implementation to print the
// modified binary triangle pattern
 
#include <bits/stdc++.h>
using namespace std;
 
// Function to print the modified
// binary pattern
void modifiedBinaryPattern(int n)
{
 
    // Loop to traverse the rows
    for (int i = 1; i <= n; i++) {
 
        // Loop to traverse the
        // numbers in each row
        for (int j = 1; j <= i; j++) {
 
            // Check if j is 1 or i
            // In either case print 1
            if (j == 1 || j == i)
                cout << 1;
 
            // Else print 0
            else
                cout << 0;
        }
 
        // Change the cursor to next
        // line after each row
        cout << endl;
    }
}
 
// Driver Code
int main()
{
    int n = 7;
 
    // Function Call
    modifiedBinaryPattern(n);
}


Java




// Java implementation to print the
// modified binary triangle pattern
import java.io.*;
 
class GFG{
 
// Function to print the modified
// binary pattern
static void modifiedBinaryPattern(int n)
{
 
    // Loop to traverse the rows
    for(int i = 1; i <= n; i++)
    {
        
       // Loop to traverse the
       // numbers in each row
       for(int j = 1; j <= i; j++)
       {
            
           // Check if j is 1 or i
           // In either case print 1
           if (j == 1 || j == i)
               System.out.print(1);
            
           // Else print 0
           else
               System.out.print(0);
        }
         
        // Change the cursor to next
        // line after each row
        System.out.println();
    }
}
 
// Driver Code
public static void main (String[] args)
{
    int n = 7;
 
    // Function call
    modifiedBinaryPattern(n);
}
}
 
// This code is contributed by shubhamsingh10


Python 3




# python3 implementation to print the
# modified binary triangle pattern
 
# Function to print the modified
# binary pattern
def modifiedBinaryPattern(n):
     
    # Loop to traverse the rows
    for i in range(1, n + 1, 1):
 
        # Loop to traverse the
        # numbers in each row
        for j in range(1, i + 1, 1):
             
            # Check if j is 1 or i
            # In either case print 1
            if (j == 1 or j == i):
                print(1, end = "")
 
            # Else print 0
            else:
                print(0, end = "")
 
        # Change the cursor to next
        # line after each row
        print('\n', end = "")
 
# Driver Code
if __name__ == '__main__':
     
    n = 7
     
    # Function Call
    modifiedBinaryPattern(n)
 
# This code is contributed by Samarth


C#




// C# implementation to print the
// modified binary triangle pattern
using System;
class GFG{
 
// Function to print the modified
// binary pattern
static void modifiedBinaryPattern(int n)
{
 
    // Loop to traverse the rows
    for(int i = 1; i <= n; i++)
    {
         
        // Loop to traverse the
        // numbers in each row
        for(int j = 1; j <= i; j++)
        {
             
            // Check if j is 1 or i
            // In either case print 1
            if (j == 1 || j == i)
                Console.Write(1);
                 
            // Else print 0
            else
                Console.Write(0);
        }
         
        // Change the cursor to next
        // line after each row
        Console.WriteLine();
    }
}
 
// Driver Code
public static void Main()
{
    int n = 7;
 
    // Function call
    modifiedBinaryPattern(n);
}
}
 
// This code is contributed by Nidhi_Biet


Javascript




<script>
 
// Javascript implementation to print the
// modified binary triangle pattern
 
// Function to print the modified
// binary pattern
function modifiedBinaryPattern(n)
{
   
    // Loop to traverse the rows
    for(let i = 1; i <= n; i++)
    {
          
       // Loop to traverse the
       // numbers in each row
       for(let j = 1; j <= i; j++)
       {
              
           // Check if j is 1 or i
           // In either case print 1
           if (j == 1 || j == i)
               document.write(1);
              
           // Else print 0
           else
               document.write(0);
        }
           
        // Change the cursor to next
        // line after each row
        document.write("<br/>");
    }
}
 
// Driver code
    let n = 7;
   
    // Function call
    modifiedBinaryPattern(n);
     
    // This code is contributed by susmitakundugoaldanga.
</script>


Output: 

1
11
101
1001
10001
100001
1000001

 

Time Complexity: O(n2)

Auxiliary Space: O(1)



Last Updated : 12 Nov, 2021
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads