Article Categories
- All Categories
-
Data Structure
-
Networking
-
RDBMS
-
Operating System
-
Java
-
MS Excel
-
iOS
-
HTML
-
CSS
-
Android
-
Python
-
C Programming
-
C++
-
C#
-
MongoDB
-
MySQL
-
Javascript
-
PHP
-
Economics & Finance
Kotlin Program to Find GCD of two Numbers
In this article, we will understand how to find the GCD of two numbers in Kotlin. Greatest Common Divisor (GCD) of two numbers is the largest number that divides both.
Below is a demonstration of the same
Suppose our input is
Value 1 : 18 Value 2 : 24
The desired output would be
GCD of the two numbers: 6
Algorithm
Step 1 ? Start
Step 2 ? Declare three integers: input1, input2 and myResult
Step 3 ? Define the integer
Step 4 ? Check that the number divides both (input1 and input2) numbers completely or not. If divides completely store it in a variable.
Step 5 ? Display the ?i? value as GCD of the two numbers
Step 6 ? Stop
Example 1
In this example, we will find the GCD of two numbers in Kotlin using while loop. First, declare and set the two inputs for which we will find the GCD later
var input1 = 18 var input2 = 24
Also, set a variable for Result
var myResult = 1
Now, use the while loop and get the GCD
<div class="code-mirror language-kotlin" contenteditable="plaintext-only" spellcheck="false" style="outline: none; overflow-wrap: break-word; overflow-y: auto; white-space: pre-wrap;"><span class="token keyword">var</span> i <span class="token operator">=</span> <span class="token number">1</span>
<span class="token keyword">while</span> <span class="token punctuation">(</span>i <span class="token operator"><=</span> input1 <span class="token operator">&&</span> i <span class="token operator"><=</span> input2<span class="token punctuation">)</span> <span class="token punctuation">{</span>
<span class="token keyword">if</span> <span class="token punctuation">(</span>input1 <span class="token operator">%</span> i <span class="token operator">==</span> <span class="token number">0</span> <span class="token operator">&&</span> input2 <span class="token operator">%</span> i <span class="token operator">==</span> <span class="token number">0</span><span class="token punctuation">)</span>
myResult <span class="token operator">=</span> i
<span class="token operator">++</span>i
<span class="token punctuation">}</span>
</div>
Let us now see the complete example
<div class="execute"></div><div class="code-mirror language-kotlin" contenteditable="plaintext-only" spellcheck="false" style="outline: none; overflow-wrap: break-word; overflow-y: auto; white-space: pre-wrap;"><span class="token keyword">fun</span> <span class="token function">main</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
<span class="token keyword">var</span> input1 <span class="token operator">=</span> <span class="token number">18</span>
<span class="token keyword">var</span> input2 <span class="token operator">=</span> <span class="token number">24</span>
<span class="token keyword">var</span> myResult <span class="token operator">=</span> <span class="token number">1</span>
<span class="token function">println</span><span class="token punctuation">(</span><span class="token string">"The input values are defined as <span class="token interpolation variable">$input1</span> and <span class="token interpolation variable">$input2</span>"</span><span class="token punctuation">)</span>
<span class="token keyword">var</span> i <span class="token operator">=</span> <span class="token number">1</span>
<span class="token keyword">while</span> <span class="token punctuation">(</span>i <span class="token operator"><=</span> input1 <span class="token operator">&&</span> i <span class="token operator"><=</span> input2<span class="token punctuation">)</span> <span class="token punctuation">{</span>
<span class="token keyword">if</span> <span class="token punctuation">(</span>input1 <span class="token operator">%</span> i <span class="token operator">==</span> <span class="token number">0</span> <span class="token operator">&&</span> input2 <span class="token operator">%</span> i <span class="token operator">==</span> <span class="token number">0</span><span class="token punctuation">)</span>
myResult <span class="token operator">=</span> i
<span class="token operator">++</span>i
<span class="token punctuation">}</span>
<span class="token function">println</span><span class="token punctuation">(</span><span class="token string">"The result is <span class="token interpolation variable">$myResult</span>"</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
The input values are defined as 18 and 24 The result is 6
Example 2
In this example, we will find the GCD of two numbers in Kotlin ?
<div class="execute"></div><div class="code-mirror language-kotlin" contenteditable="plaintext-only" spellcheck="false" style="outline: none; overflow-wrap: break-word; overflow-y: auto; white-space: pre-wrap;"><span class="token keyword">fun</span> <span class="token function">main</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
<span class="token keyword">val</span> input1 <span class="token operator">=</span> <span class="token number">18</span>
<span class="token keyword">val</span> input2 <span class="token operator">=</span> <span class="token number">24</span>
<span class="token function">println</span><span class="token punctuation">(</span><span class="token string">"The input values are defined as <span class="token interpolation variable">$input1</span> and <span class="token interpolation variable">$input2</span>"</span><span class="token punctuation">)</span>
<span class="token function">getGCD</span><span class="token punctuation">(</span>input1<span class="token punctuation">,</span> input2<span class="token punctuation">)</span>
<span class="token punctuation">}</span>
<span class="token keyword">fun</span> <span class="token function">getGCD</span><span class="token punctuation">(</span>input1<span class="token operator">:</span> Int<span class="token punctuation">,</span> input2<span class="token operator">:</span> Int<span class="token punctuation">)</span><span class="token punctuation">{</span>
<span class="token keyword">var</span> myResult <span class="token operator">=</span> <span class="token number">1</span>
<span class="token keyword">var</span> i <span class="token operator">=</span> <span class="token number">1</span>
<span class="token keyword">while</span> <span class="token punctuation">(</span>i <span class="token operator"><=</span> input1 <span class="token operator">&&</span> i <span class="token operator">>=</span> input2<span class="token punctuation">)</span> <span class="token punctuation">{</span>
<span class="token keyword">if</span> <span class="token punctuation">(</span>input1 <span class="token operator">%</span> i <span class="token operator">==</span> <span class="token number">0</span> <span class="token operator">&&</span> input2 <span class="token operator">%</span> i <span class="token operator">==</span> <span class="token number">0</span><span class="token punctuation">)</span>
myResult <span class="token operator">=</span> i
<span class="token operator">++</span>i
<span class="token punctuation">}</span>
<span class="token function">println</span><span class="token punctuation">(</span><span class="token string">"The result is <span class="token interpolation variable">$myResult</span>"</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
The input values are defined as 18 and 24 The result is 6
Example 3
In this example, we will find the GCD of two numbers in Kotlin using while loop but with an alternative way ?
<div class="execute"></div><div class="code-mirror language-kotlin" contenteditable="plaintext-only" spellcheck="false" style="outline: none; overflow-wrap: break-word; overflow-y: auto; white-space: pre-wrap;"><span class="token keyword">fun</span> <span class="token function">main</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
<span class="token keyword">var</span> input1 <span class="token operator">=</span> <span class="token number">18</span>
<span class="token keyword">var</span> input2 <span class="token operator">=</span> <span class="token number">24</span>
<span class="token function">println</span><span class="token punctuation">(</span><span class="token string">"The input values are defined as <span class="token interpolation variable">$input1</span> and <span class="token interpolation variable">$input2</span>"</span><span class="token punctuation">)</span>
<span class="token keyword">while</span> <span class="token punctuation">(</span>input1 <span class="token operator">!=</span> input2<span class="token punctuation">)</span> <span class="token punctuation">{</span>
<span class="token keyword">if</span> <span class="token punctuation">(</span>input1 <span class="token operator">></span> input2<span class="token punctuation">)</span>
input1 <span class="token operator">-=</span> input2
<span class="token keyword">else</span>
input2 <span class="token operator">-=</span> input1
<span class="token punctuation">}</span>
<span class="token function">println</span><span class="token punctuation">(</span><span class="token string">"The result is <span class="token interpolation variable">$input1</span>"</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
The input values are defined as 18 and 24 The result is 6
