Groovy: 少しの代数、最大公約数と最小公倍数
公開日: 13 August 2019
PPMCは
AlgebraUtils.groovy
package com.cheroliv.misc
import groovy.transform.CompileStatic
@CompileStatic
class AlgebraUtils {
/**
* Great common divisor
* Plus grand commun diviseur(pgcd)
* Great Common Divisor
* @param a
* @param b
* @return
*/
static Integer gcd(Integer a, Integer b) {
!b ? a : gcd(b, a % b)
}
/**
* Least common multiple
* Plus petit commun multiplicateur(ppmc)
* @param a
* @param b
* @return
*/
static BigInteger lcm(Integer a, Integer b) {
(a * b / gcd(a, b)) as BigInteger
}
static void main(String... args) {
Integer a = 96
Integer b = 28
println "gcd($a, $b) = ${gcd(a, b)}"
a = 790
b = 990
println "lcm($a, $b) = ${lcm(a, b)}"
}
}
結果:
gcd(96, 28) = 4 最小公倍数(790, 990) = 78210
関連記事
HyperFrames-Gradle : AsciiDocをMP4動画に変換
31 May 2026
31 May 2026
プラグイン独立+コンシューマー ルート アーキテクチャ:なぜ私のGradleビルドが重複するのか
14 May 2026
14 May 2026