Course
Introduction
Print an Integer (Entered by the User)Add Two IntegersMultiply two Floating Point NumbersFind ASCII value of a characterCompute Quotient and RemainderSwap Two NumbersCheck Whether a Number is Even or OddFind the Frequency of Character in a StringRemove All Whitespaces from a StringRound a Number to n Decimal PlacesDecision Making and Loop
Check Whether an Alphabet is Vowel or ConsonantFind the Largest Among Three NumbersFind all Roots of a Quadratic EquationCheck Leap YearCheck Whether a Number is Positive or NegativeCheck Whether a Character is Alphabet or NotCalculate the Sum of Natural NumbersFind Factorial of a NumberGenerate Multiplication TableDisplay Fibonacci SeriesFind GCD of two NumbersFind LCM of two NumbersDisplay Characters from A to Z using loopCount Number of Digits in an IntegerReverse a NumberCalculate the Power of a NumberCheck Whether a Number is Palindrome or NotCheck Whether a Number is Prime or NotDisplay Prime Numbers Between Two IntervalsCheck Armstrong NumberDisplay Armstrong Number Between Two IntervalsDisplay Factors of a NumberMake a Simple Calculator Using switch...caseCount the Number of Vowels and Consonants in a SentenceSort Elements in Lexicographical Order (Dictionary Order)Create Pyramid and PatternFunctions
Display Prime Numbers Between Intervals Using FunctionDisplay Armstrong Numbers Between Intervals Using FunctionCheck Whether a Number can be Expressed as Sum of Two Prime NumbersFind the Sum of Natural Numbers using RecursionFind Factorial of a Number Using RecursionFind G.C.D Using RecursionConvert Binary Number to Decimal and vice-versaConvert Octal Number to Decimal and vice-versaConvert Binary Number to Octal and vice-versaReverse a Sentence Using Recursioncalculate the power using recursionArrays
Calculate Average Using ArraysFind Largest Element in an ArrayCalculate Standard DeviationAdd Two Matrix Using Multi-dimensional ArraysMultiply to Matrix Using Multi-dimensional ArraysMultiply two Matrices by Passing Matrix to a FunctionFind Transpose of a MatrixPrint an ArrayConcatenate Two ArraysConvert Character to String and Vice-VersaCheck if An Array Contains a Given ValueCollections
Join Two ListsConvert List (ArrayList) to Array and Vice-VersaConvert Map (HashMap) to ListConvert Array to Set (HashSet) and Vice-VersaSort a Map By ValuesObject and Class
Add Two Complex Numbers by Passing Class to a FunctionCalculate Difference Between Two Time PeriodsAdvanced
Convert String to DateGet Current Date/TImeConvert Milliseconds to Minutes and SecondsAdd Two DatesGet Current Working DirectoryConvert Byte Array to HexadecimalCreate String from Contents of a FileAppend Text to an Existing FileConvert a Stack Trace to a StringConvert File to byte array and Vice-VersaConvert InputStream to StringConvert OutputStream to StringLookup enum by String valueCompare StringsSort ArrayList of Custom Objects By PropertyCheck if a String is NumericKotlin Program to Find G.C.D Using Recursion
This program takes two positive integers and calculates GCD using recursion.
Visit this page to learn how you can calculate the GCD using loops.
Example: GCD of Two Numbers using Recursion
fun main(args: Array<String>) {
val n1 = 366
val n2 = 60
val hcf = hcf(n1, n2)
println("G.C.D of $n1 and $n2 is $hcf.")
}
fun hcf(n1: Int, n2: Int): Int {
if (n2 != 0)
return hcf(n2, n1 % n2)
else
return n1
}
When you run the program, the output will be:
G.C.D of 366 and 60 is 6.
In the above program, the recursive function is called until n2 is 0. In the end, the value of n1 is the GCD or HCF of the given two numbers.
Execution Steps
No. | Recursive call | n1 | n2 | n1 % n2 |
---|---|---|---|---|
1 | hcf(366, 60) | 366 | 60 | 6 |
2 | hcf(60, 6) | 60 | 6 | 0 |
Final | hcf(6, 0) | 6 | 0 | - |
Here’s the equivalent Java code: Java Program to Find G.C.D. using recursion