Golang Program To Print Mirror Upper Star Triangle Pattern

In this tutorial, we will learn how to print downward triangle pattern using Go programming language.

Syntax

for initialization; condition; update {
   statement(s)
}

In the code, we use the for loop to repeat a block of code until the specified condition is met.

Example: Golang Program to Print Download Triangle Star Pattern Using One Single Function

Algorithm

  • Step 1 ? Import the package fmt.

  • Step 2 ? Start the function main ().

  • Step 3 ? Declare and initialize the variables.

  • Step 4 ? Use of for loop with condition and incrementor.

  • Step 5 ? Start the function main ().

  • Step 6 ? Calling the function upper () to print mirror upper star triangle pattern.

  • Step 7 ? Print the result using fmt.Println ().

Example

<div class="execute"></div><div class="code-mirror  language-java" contenteditable="plaintext-only" spellcheck="false" style="outline: none; overflow-wrap: break-word; overflow-y: auto; white-space: pre-wrap;"><span class="token comment">// GOLANG PROGRAM TO PRINT MIRROR UPPER STAR TRIANGLE PATTERN</span>
<span class="token keyword">package</span> <span class="token namespace">main</span>

<span class="token comment">// fmt package provides the function to print anything</span>
<span class="token keyword">import</span> <span class="token string">"fmt"</span>

<span class="token comment">// Create a function upper ()</span>
func <span class="token function">upper</span><span class="token punctuation">(</span>row <span class="token keyword">int</span><span class="token punctuation">)</span> bool <span class="token punctuation">{</span>

   <span class="token comment">//i for rows and j for columns</span>
   <span class="token comment">//row denotes the number of rows you want to print</span>
   <span class="token keyword">var</span> i <span class="token keyword">int</span>
   <span class="token keyword">var</span> j <span class="token keyword">int</span>
   row <span class="token operator">=</span> <span class="token number">6</span>
   <span class="token class-name"><span class="token namespace">fmt<span class="token punctuation">.</span></span>Scanln</span><span class="token punctuation">(</span><span class="token operator">&</span>row<span class="token punctuation">)</span>
   <span class="token comment">//Outer loop work for rows</span>
   <span class="token keyword">for</span> i <span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span> i <span class="token operator"><</span> row<span class="token punctuation">;</span> i<span class="token operator">++</span> <span class="token punctuation">{</span>
      <span class="token comment">//inner loop work for space</span>
      <span class="token keyword">for</span> j <span class="token operator">=</span> row <span class="token operator">-</span> i<span class="token punctuation">;</span> j <span class="token operator">></span> <span class="token number">1</span><span class="token punctuation">;</span> j<span class="token operator">--</span> <span class="token punctuation">{</span>
         <span class="token comment">//prints space between two stars</span>
         <span class="token class-name"><span class="token namespace">fmt<span class="token punctuation">.</span></span>Print</span><span class="token punctuation">(</span><span class="token string">" "</span><span class="token punctuation">)</span>
      <span class="token punctuation">}</span>
      <span class="token comment">//inner loop for columns</span>
      <span class="token keyword">for</span> j <span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span> j <span class="token operator"><=</span> i<span class="token punctuation">;</span> j<span class="token operator">++</span> <span class="token punctuation">{</span>
         <span class="token comment">//prints star</span>
         <span class="token class-name"><span class="token namespace">fmt<span class="token punctuation">.</span></span>Print</span><span class="token punctuation">(</span><span class="token string">"* "</span><span class="token punctuation">)</span>
      <span class="token punctuation">}</span>
      <span class="token comment">//throws the cursor in a new line after printing each line</span>
      <span class="token class-name"><span class="token namespace">fmt<span class="token punctuation">.</span></span>Println</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token comment">// print the result</span>
   <span class="token punctuation">}</span>
   <span class="token comment">// Outer loop fo Rows</span>
   <span class="token keyword">for</span> i <span class="token operator">=</span> <span class="token number">1</span><span class="token punctuation">;</span> i <span class="token operator"><=</span> row<span class="token punctuation">;</span> i<span class="token operator">++</span> <span class="token punctuation">{</span>
      <span class="token comment">// Inner loop 1 to print triangle 3</span>
      <span class="token keyword">for</span> j <span class="token operator">=</span> <span class="token number">1</span><span class="token punctuation">;</span> j <span class="token operator"><</span> i<span class="token punctuation">;</span> j<span class="token operator">++</span> <span class="token punctuation">{</span>
         <span class="token comment">// Printing whitespace</span>
         <span class="token class-name"><span class="token namespace">fmt<span class="token punctuation">.</span></span>Print</span><span class="token punctuation">(</span><span class="token string">" "</span><span class="token punctuation">)</span>
      <span class="token punctuation">}</span>
      <span class="token comment">// Inner loop 2 to print triangle 4</span>
      <span class="token keyword">for</span> j <span class="token operator">=</span> i<span class="token punctuation">;</span> j <span class="token operator"><=</span> row<span class="token punctuation">;</span> j<span class="token operator">++</span> <span class="token punctuation">{</span>
         <span class="token comment">// Printing star and whitespace</span>
         <span class="token class-name"><span class="token namespace">fmt<span class="token punctuation">.</span></span>Print</span><span class="token punctuation">(</span><span class="token string">"*"</span> <span class="token operator">+</span> <span class="token string">" "</span><span class="token punctuation">)</span>
      <span class="token punctuation">}</span>
      <span class="token comment">// By now done with one row so new line</span>
      <span class="token class-name"><span class="token namespace">fmt<span class="token punctuation">.</span></span>Println</span><span class="token punctuation">(</span><span class="token punctuation">)</span>
   <span class="token punctuation">}</span>
<span class="token keyword">   return</span> <span class="token boolean">true</span>
<span class="token punctuation">}</span>
<span class="token comment">// start the function main ()</span>
func <span class="token function">main</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
   <span class="token class-name"><span class="token namespace">fmt<span class="token punctuation">.</span></span>Println</span><span class="token punctuation">(</span><span class="token string">"GOLANG PROGRAM TO PRINT MIRROR UPPER STAR TRIANGLE PATTERN"</span><span class="token punctuation">)</span>
   <span class="token class-name"><span class="token namespace">fmt<span class="token punctuation">.</span></span>Print</span><span class="token punctuation">(</span><span class="token function">upper</span><span class="token punctuation">(</span><span class="token number">6</span><span class="token punctuation">)</span><span class="token punctuation">)</span>
   <span class="token comment">// print the result</span>
<span class="token punctuation">}</span>
</div><div class="output-wrapper"><div class="console-close"></div><div class="code-output"></div></div>

Output

GOLANG PROGRAM TO PRINT MIRROR UPPER STAR TRIANGLE PATTERN
     * 
    * * 
   * * * 
  * * * * 
 * * * * * 
* * * * * * 
* * * * * * 
 * * * * * 
  * * * * 
   * * * 
    * * 
     * 
true

Description Of The Code

  • In the above program, we first declare the package main.

  • We imported the fmt package that includes the files of package fmt.

  • Next, we create the function upper () to print the pattern.

  • Declare the three integer variables i, j and row. Initialize the row variable to an integer value you want for the number of rows of the mirror upper star triangle pattern.

  • Using for loop ? The condition is given inside an if statement and stop execution is mentioned once the condition is right.

  • Start the function main ().

  • Next, we call the function upper () to print the pattern.

  • And last printing the result on the screen using fmt.Println ().

Conclusion

We have successfully compiled and executed the Golang program code to print the mirror upper star triangle pattern in the above example.

Updated on: 2022-11-16T06:28:15+05:30

363 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements