Open In App

Program to print circle pattern

Improve
Improve
Like Article
Like
Save
Share
Report

Given a positive integer n i.e, the radius of the circle, print a circle using stars. 

Examples : 

Input : n = 3
Output :
  ***  
 *   * 
*     *
*     *
*     *
 *   * 
  ***

Input : n = 6
Output :
    *****    
  **     **  
 **       ** 
 *         * 
*           *
*           *
*           *
*           *
*           *
 *         * 
 **       ** 
  **     **  
    *****    

Below is the implementation:

CPP




// C++ implementation to print circle pattern
#include <bits/stdc++.h>
using namespace std;
  
// function to print circle pattern
void printPattern(int radius) {
  
  // dist represents distance to the center
  float dist;
  
  // for horizontal movement
  for (int i = 0; i <= 2 * radius; i++) {
  
    // for vertical movement
    for (int j = 0; j <= 2 * radius; j++) {
      dist = sqrt((i - radius) * (i - radius) + 
                  (j - radius) * (j - radius));
  
      // dist should be in the range (radius - 0.5)
      // and (radius + 0.5) to print stars(*)
      if (dist > radius - 0.5 && dist < radius + 0.5) 
        cout << "*";
      else 
        cout << " ";      
    }
  
    cout << "\n";
  }
}
  
// Driver Code
int main() {
  int radius = 6;
  printPattern(radius);
  return 0;
}


Java




// Java implementation to print circle pattern
  
class GFG {
      
// function to print circle pattern
static void printPattern(int radius) {
  
    // dist represents distance to the center
    double dist;
  
    // for horizontal movement
    for (int i = 0; i <= 2 * radius; i++) {
  
    // for vertical movement
    for (int j = 0; j <= 2 * radius; j++) {
        dist = Math.sqrt((i - radius) * (i - radius) +
                         (j - radius) * (j - radius));
  
        // dist should be in the range (radius - 0.5)
        // and (radius + 0.5) to print stars(*)
        if (dist > radius - 0.5 && dist < radius + 0.5)
        System.out.print("*");
        else
        System.out.print(" ");
    }
  
    System.out.print("\n");
    }
}
  
// Driver code
public static void main(String[] args) 
{
    int radius = 6;
    printPattern(radius);
}
}
  
// This code is contributed by Anant Agarwal.


Python3




# Python implementation
# to print circle pattern
  
import math
  
# function to print circle pattern
def printPattern(radius):
      
    # dist represents distance to the center
    # for horizontal movement
    for i in range((2 * radius)+1):
   
        # for vertical movement
        for j in range((2 * radius)+1):
              
            dist = math.sqrt((i - radius) * (i - radius) + 
                  (j - radius) * (j - radius))
   
            # dist should be in the
            # range (radius - 0.5)
            # and (radius + 0.5) to print stars(*)
            if (dist > radius - 0.5 and dist < radius + 0.5): 
                print("*",end="")
            else:
                print(" ",end="")      
      
   
        print()
    
# Driver code
  
radius = 6
printPattern(radius)
  
# This code is contributed
# by Anant Agarwal.


C#




// C# implementation to print circle pattern
using System;
  
class GFG {
      
    // function to print circle pattern
    static void printPattern(int radius) {
      
        // dist represents distance to the center
        double dist;
      
        // for horizontal movement
        for (int i = 0; i <= 2 * radius; i++) {
      
            // for vertical movement
            for (int j = 0; j <= 2 * radius; j++) {
                dist = Math.Sqrt((i - radius) * 
                        (i - radius) + (j - radius) 
                                    * (j - radius));
          
                // dist should be in the range 
                // (radius - 0.5) and (radius + 0.5) 
                // to print stars(*)
                if (dist > radius - 0.5 && 
                               dist < radius + 0.5)
                    Console.Write("*");
                else
                    Console.Write(" ");
            }
          
            Console.WriteLine("");
        }
    }
      
    // Driver code
    public static void Main() 
    {
        int radius = 6;
          
        printPattern(radius);
    }
}
  
// This code is contributed by vt_m.


PHP




<?php
// PHP implementation to print 
// circle pattern
  
// Function to print circle pattern
function printPattern($radius
    {
      
    // dist represents distance
    // to the center
    $dist = 0.0;
      
    // for horizontal movement
    for ($i = 0; $i <= 2 * $radius; $i++) 
    {
      
        // for vertical movement
        for ($j = 0; $j <= 2 * $radius; $j++) 
        {
            $dist = sqrt(($i - $radius) * 
                         ($i - $radius) + 
                         ($j - $radius) * 
                         ($j - $radius));
          
            // dist should be in the range 
            // (radius - 0.5) and (radius + 0.5) 
            // to print stars(*)
            if ($dist > $radius - 0.5 && 
                 $dist < $radius + 0.5) 
                echo "*";
                  
            else
                echo " "
        }
        echo "\n";
    }
}
  
// Driver Code
$radius = 6;
printPattern($radius);
  
// This code is contributed by Mithun Kumar
?>


Javascript




<script>
  
// JavaScript implementation to print circle pattern
  
// function to print circle pattern
function printPattern(radius) 
{
// dist represents distance to the center
        var dist = parseFloat(0);
  
        // for horizontal movement
        for (var i = 0; i <= 2 * radius; i++) 
        {  
          // for vertical movement
          for (var j = 0; j <= 2 * radius; j++) 
          {
            dist = Math.sqrt(
              (i - radius) * (i - radius) + 
              (j - radius) * (j - radius)
            );
  
            // dist should be in the range (radius - 0.5)
            // and (radius + 0.5) to print stars(*)
            if (dist > radius - 0.5 && dist < radius + 0.5) 
            document.write("*");
            else 
            document.write("  ");
          }
  
          document.write("<br>");
        }
      }
  
      // Driver Code
        
      var radius = 6;
   
      printPattern(radius);
        
    </script>


Output

    *****    
  **     **  
 **       ** 
 *         * 
*           *
*           *
*           *
*           *
*           *
 *         * 
 **       ** 
  **     **  
    *****    

Time Complexity: O(radius*radius))
Auxiliary Space: O(1)



Last Updated : 20 Feb, 2023
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads