Golang Program To Create Pyramid And Pattern

In this tutorial, we will learn how to create pyramids with different patterns in Go programming language

Syntax

NESTED FOR LOOP
for [condition | ( init; condition; increment ) | Range] {
   for [condition | ( init; condition; increment ) | Range] {
      statement(s);
   }
   statement(s);
}

Example 1: Golang code to Create Pyramid And Pattern Using $

Algorithm

  • Step 1 ? Import the package fmt.

  • Step 2 ? Start function main ().

  • Step 3 ? Declare and initialize the variables.

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

  • Step 5 ? 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 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>
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 comment">// declare the integer variables</span>
   <span class="token keyword">var</span> i<span class="token punctuation">,</span> j<span class="token punctuation">,</span> rows <span class="token keyword">int</span>
   rows <span class="token operator">=</span> <span class="token number">7</span>
   
   <span class="token comment">// Scanln() reads data from rows and stores it in the places</span>
   <span class="token comment">// specified by the additional arguments in the parameter format</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>rows<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">"\nGolang program to create pyramid and pattern"</span><span class="token punctuation">)</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> rows<span class="token punctuation">;</span> i<span class="token operator">++</span> <span class="token punctuation">{</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> rows<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 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 keyword">for</span> k <span class="token operator">:</span><span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span> k <span class="token operator">!=</span> <span class="token punctuation">(</span><span class="token number">2</span><span class="token operator">*</span>i <span class="token operator">-</span> <span class="token number">1</span><span class="token punctuation">)</span><span class="token punctuation">;</span> k<span class="token operator">++</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 string">"$"</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 punctuation">)</span>
   <span class="token punctuation">}</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 create pyramid and pattern
      $
     $$$
    $$$$$
   $$$$$$$
  $$$$$$$$$
 $$$$$$$$$$$
$$$$$$$$$$$$$

Description of the Code

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

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

  • Now start the function main () and this function is the entry point of the executable program. It does not take any argument nor return anything.

  • Declare the three integer variables i, j and rows. Initialize the rows variable to an integer value you want for pyramid of $ pattern pattern. Use fmt.Scanln () to read and store the rows value.

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

  • And last printing the result in the form of a pyramid with $ pattern on the screen using fmt.Println () function.

Example 2: Golang Code to Create a Pyramid with Number Pattern

Algorithm

  • Step 1 ? Import the package fmt and package strconv.

  • Step 2 ? Start function main ().

  • Step 3 ? Declare and initialize the variable rows.

  • Step 4 ? Initialize k=0, NUM1=0, rows=5, NUM2=0.

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

  • Step 5 ? 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 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>
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 comment">// DECLARE AND INITIALIZE THE INTEGER VARIABLES</span>
   <span class="token keyword">var</span> rows<span class="token punctuation">,</span> NUM1<span class="token punctuation">,</span> NUM2<span class="token punctuation">,</span> k <span class="token keyword">int</span> <span class="token operator">=</span> <span class="token number">5</span><span class="token punctuation">,</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token number">0</span>
   
   <span class="token comment">// USING FOR LOOP</span>
   <span class="token keyword">for</span> i <span class="token operator">:</span><span class="token operator">=</span> <span class="token number">1</span><span class="token punctuation">;</span> i <span class="token operator"><=</span> rows<span class="token punctuation">;</span> i<span class="token operator">++</span> <span class="token punctuation">{</span>
      k <span class="token operator">=</span> <span class="token number">0</span>
      <span class="token keyword">for</span> space <span class="token operator">:</span><span class="token operator">=</span> <span class="token number">1</span><span class="token punctuation">;</span> space <span class="token operator"><=</span> rows<span class="token operator">-</span>i<span class="token punctuation">;</span> space<span class="token operator">++</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 string">" "</span><span class="token punctuation">)</span>
         NUM1<span class="token operator">++</span>
      <span class="token punctuation">}</span>  
      <span class="token keyword">for</span> <span class="token punctuation">{</span>
         <span class="token keyword">if</span> k <span class="token operator">==</span> <span class="token number">2</span><span class="token operator">*</span>i<span class="token operator">-</span><span class="token number">1</span> <span class="token punctuation">{</span>
            <span class="token keyword">break</span>
         <span class="token punctuation">}</span>
         <span class="token keyword">if</span> NUM1 <span class="token operator"><=</span> rows<span class="token operator">-</span><span class="token number">1</span> <span class="token punctuation">{</span>
            <span class="token class-name"><span class="token namespace">fmt<span class="token punctuation">.</span></span>Printf</span><span class="token punctuation">(</span><span class="token string">"%d "</span><span class="token punctuation">,</span> i<span class="token operator">+</span>k<span class="token punctuation">)</span>
            NUM1<span class="token operator">++</span>
         <span class="token punctuation">}</span> <span class="token keyword">else</span> <span class="token punctuation">{</span>
            NUM2<span class="token operator">++</span>
            <span class="token class-name"><span class="token namespace">fmt<span class="token punctuation">.</span></span>Printf</span><span class="token punctuation">(</span><span class="token string">"%d "</span><span class="token punctuation">,</span> <span class="token punctuation">(</span>i <span class="token operator">+</span> k <span class="token operator">-</span> <span class="token number">2</span><span class="token operator">*</span>NUM2<span class="token punctuation">)</span><span class="token punctuation">)</span>
         <span class="token punctuation">}</span>
         k<span class="token operator">++</span>
      <span class="token punctuation">}</span>
      NUM2<span class="token punctuation">,</span> k<span class="token punctuation">,</span> NUM1 <span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token number">0</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">""</span><span class="token punctuation">)</span>
   <span class="token punctuation">}</span>
   <span class="token comment">// PRINT THE PYRAMID WITH NUMBER PATTERN</span>
<span class="token punctuation">}</span>
</div><div class="output-wrapper"><div class="console-close"></div><div class="code-output"></div></div>

Output

    1
   2 3 2
  3 4 5 4 3
 4 5 6 7 6 5 4
5 6 7 8 9 8 7 6 5

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.

  • Now start the function main () and this function is the entry point of the executable program. It does not take any argument nor return anything.

  • Declare the four integer variables NUM1, NUM2, k and rows. Initialize the rows variable to an integer value you want for pyramid of numbers pattern. Use fmt.Scanln () to read and store the rows value.

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

  • And last printing the result in the form of a pyramid with numbers pattern on the screen using fmt.Println () function.

Example 3: Golang Program code to Create a pyramid Using Alphabets Pattern

Algorithm

  • Step 1 ? Import the package fmt and package strconv.

  • Step 2 ? Start function main ().

  • Step 3 ? Declare and initialize the variables.

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

  • Step 5 ? 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 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>
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 comment">// declare and initialize the integer variable</span>
   <span class="token keyword">var</span> rows <span class="token keyword">int</span>
   rows <span class="token operator">=</span> <span class="token number">7</span>
   <span class="token class-name"><span class="token namespace">fmt<span class="token punctuation">.</span></span>Scanf</span><span class="token punctuation">(</span><span class="token string">"%d"</span><span class="token punctuation">,</span> <span class="token operator">&</span>rows<span class="token punctuation">)</span>
   <span class="token class-name"><span class="token namespace">fmt<span class="token punctuation">.</span></span>Printf</span><span class="token punctuation">(</span><span class="token string">"Golang program to create pyramid and pattern\n"</span><span class="token punctuation">)</span>
   alphabet <span class="token operator">:</span><span class="token operator">=</span> <span class="token number">64</span>
   i <span class="token operator">:</span><span class="token operator">=</span> <span class="token number">1</span>
   
   <span class="token comment">// using for loop</span>
   <span class="token keyword">for</span> i <span class="token operator"><=</span> rows <span class="token punctuation">{</span>
      j <span class="token operator">:</span><span class="token operator">=</span> <span class="token number">1</span>
      <span class="token keyword">for</span> j <span class="token operator"><=</span> rows<span class="token operator">-</span>i <span class="token punctuation">{</span>
         <span class="token class-name"><span class="token namespace">fmt<span class="token punctuation">.</span></span>Printf</span><span class="token punctuation">(</span><span class="token string">" "</span><span class="token punctuation">)</span>
         j<span class="token operator">++</span>
      <span class="token punctuation">}</span>
      k <span class="token operator">:</span><span class="token operator">=</span> i
      <span class="token keyword">for</span> <span class="token number">0</span> <span class="token operator"><</span> k <span class="token punctuation">{</span>
         <span class="token class-name"><span class="token namespace">fmt<span class="token punctuation">.</span></span>Printf</span><span class="token punctuation">(</span><span class="token string">"%c"</span><span class="token punctuation">,</span> alphabet<span class="token operator">+</span>k<span class="token punctuation">)</span>
         k<span class="token operator">--</span>
      <span class="token punctuation">}</span>
      l <span class="token operator">:</span><span class="token operator">=</span> <span class="token number">2</span>
      <span class="token keyword">for</span> l <span class="token operator"><=</span> i <span class="token punctuation">{</span>
         <span class="token class-name"><span class="token namespace">fmt<span class="token punctuation">.</span></span>Printf</span><span class="token punctuation">(</span><span class="token string">"%c"</span><span class="token punctuation">,</span> alphabet<span class="token operator">+</span>l<span class="token punctuation">)</span>
         l<span class="token operator">++</span>
      <span class="token punctuation">}</span>
      <span class="token class-name"><span class="token namespace">fmt<span class="token punctuation">.</span></span>Printf</span><span class="token punctuation">(</span><span class="token string">"\n"</span><span class="token punctuation">)</span>
      i<span class="token operator">++</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 create pyramid and pattern
      A
     BAB
    CBABC
   DCBABCD
  EDCBABCDE
 FEDCBABCDEF
GFEDCBABCDEFG

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.

  • Now start the function main () and this function is the entry point of the executable program. It does not take any argument nor return anything.

  • Declare the variable rows and initialize the variable to an integer value you want for pyramid of alphabets pattern. Use fmt.Scanln () to read and store the rows value.

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

  • And last printing the result in the form of a pyramid with alphabet pattern on the screen using fmt.Println () function.

Conclusion

We have successfully compiled and executed the Golang program code to create pyramid with patterns of $, numbers and alphabet patterns using for loop in the above three examples.

Updated on: 2022-11-16T05:29:58+05:30

2K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements