FOR FREE YEAR SOLVED

K Shape Star Pattern

Back to Programming

Description

K Shape Star Pattern

 

Here the number of lines is taken as input. The aforesaid pattern is divided into two halves while implemented. In the first half, the numbers of stars are decreased and in the second half, the number of stars increased. For each half two for loops are used to print the stars. In the first half, the numbers of stars are decreased by 1 and in the second half, the numbers of stars are increased by 1. The pattern is only possible if the number of lines is odd.

Algorithm

INPUT: Number of lines
OUTPUT: the aforesaid pattern
PROCESS:
Step 1: [taking the inputs]
	Read n [number of lines]
Step 2: [printing the pattern]
	Set st<-n/2+1
	If n modulus 2≠0 then
For i=1 to n/2+1 repeat
			For j=1 to st repeat
				Print "*"
			[End of ‘for’ loop]
			Move to the next line
			Set st<-st-1
		[End of ‘for’ loop]
		Set st<-st+2
		For i=n/2+2 to n repeat
			For j=1 to st repeat
				Print "*"
			[End of ‘for’ loop]
			Move to the next line
			Set st<-st+1			
		[End of ‘for’ loop]
	else
		print "Please give correct input(no. of lines should be odd)
	[End of ‘if’]
Step 3: Stop 

Code

Time Complexity:

for(i=1;i<=n/2+1;i++)------------------------- n/2+1

                                {            for(j=1;j<=st;j++)--------------------- st

                                                                printf("*");

                                                printf("\n");

                                                st-=1;

                                }

                                //printing the second half of the pattern where the number of stars

                                //are increasing

                                st=st+2;

                                for(i=n/2+2;i<=n;i++)-------------------------- n/2

                                {              for(j=1;j<=st;j++)----------------------- st

                                                                printf("*");

                                                printf("\n");

                                                st+=1;      }

 

The Time complexity of this program is: O(((n/2+1)*st)+((n/2)*st))=O(n2).