We can compute the Greatest Common Divisor (GCD) using Iterative Divide/Remainder Method. The following is the GCD implementation in BASH Programming:
1 2 3 4 5 6 7 8 9 10 11 12 | #!/bin/bash function gcd() { local x=$1 local y=$2 while [ $y -gt 0 ]; do local t=$x x=$y y=$((t%y)) done echo $x } |
#!/bin/bash function gcd() { local x=$1 local y=$2 while [ $y -gt 0 ]; do local t=$x x=$y y=$((t%y)) done echo $x }
And the Least Common Multiples can be computed as the multipication of two integers divided by their GCD:
1 2 3 4 5 6 7 8 | #!/bin/bash function lcm() { local x=$1 local y=$2 local g=$(gcd $x $y) echo $((x*y/g)) } |
#!/bin/bash function lcm() { local x=$1 local y=$2 local g=$(gcd $x $y) echo $((x*y/g)) }
See also: Smallest Multiple Algorithm using Bruteforce or GCD/LCM
The GCD Program in BASH: BASH Function to Compute the Greatest Common Divisor and Least Common Multiples
BASH Programming/Shell
- Three Interesting/Fun BASH Commands
- One Interesting Linux Command (Steam Locomotive in BASH)
- Simple Bash Function to Repeat a Command N times with Retries
- How to Extract a Domain Name from a Full URL in BASH?
- BASH Function to Compute the Greatest Common Divisor and Least Common Multiples
- BASH Function to Get Memory Information via AWK
- BASH Function to Escape Parameters Argument
- BASH Function to Check if sudo Available
- Full Permutation Algorithm Implementation in BASH
- BASH Function to Install Docker
- A Simple BASH Function/Script to Run a Command in Background
- BASH Script to Compute the Average Ping to a Domain
- A Bash Process Controller to Start, Stop and Restart an Daemon Program
- Linux BASH shell - Echo This if you get angry
- Bash SHELL, Chess Board Printing
–EOF (The Ultimate Computing & Technology Blog) —
GD Star Rating
loading...
243 wordsloading...
Last Post: Teaching Kids Programming: Number of Positions in Line of People
Next Post: Teaching Kids Programming - Count of Sublists with Same First and Last Values