Program to print circle pattern
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)