Open In App

Program to print circle pattern

Last Updated : 20 Feb, 2023
Comments
Improve
Suggest changes
Like Article
Like
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("&nbsp;&nbsp;");
          }

          document.write("<br>");
        }
      }

      // Driver Code
      
      var radius = 6;
 
      printPattern(radius);
      
    </script>

Output
    *****    
  **     **  
 **       ** 
 *         * 
*           *
*           *
*           *
*           *
*           *
 *         * 
 **       ** 
  **     **  
    *****    

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


Next Article

Similar Reads