Reverse 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 numbers of stars are increased. For each half three 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.
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
Set sp<-1
If n modulus 2≠0 then
For i=1 to n/2+1 repeat
For k=1 to sp repeat
Print “ “
[End of ‘for’ loop]
For j=1 to st repeat
Print "*"
[End of ‘for’ loop]
Move to the next line
Set st<-st-1
Set sp<-sp+1
[End of ‘for’ loop]
Set st<-st+2
Set sp<-sp-2
For i=n/2+2 to n repeat
For k=1 to sp repeat
Print “ “
[End of ‘for’ loop]
For j=1 to st repeat
Print "*"
[End of ‘for’ loop]
Move to the next line
Set st<-st+1
Set sp<-sp-1
[End of ‘for’ loop]
else
print "Please give correct input(no. of lines should be odd)
[End of ‘if’]
Step 3: Stop
for(i=1;i<=n/2+1;i++)---------------------------------------- n/2+1
{ for(k=1;k<=sp;k++)-------------------------------- sp
printf(" ");
for(j=1;j<=st;j++)----------------------------------- st
printf("*");
printf("\n");
st-=1;
sp+=1;
}
//printing the second half of the pattern where the number of stars
//are increasing
st=st+2;
sp-=2;
for(i=n/2+2;i<=n;i++)----------------------------------------- n/2
{ for(k=1;k<=sp;k++)--------------------------------- sp
printf(" ");
for(j=1;j<=st;j++)------------------------------------ st
printf("*");
printf("\n");
st+=1;
sp-=1;
}
The complexity is: O(((n/2+1)*(sp+st))+((n/2)*(sp+st)))=O()