使用Scala语言用while语句写一个最大公约数和最小公倍数
时间: 2023-05-31 08:04:09 浏览: 113
最大公约数:
```scala
def gcd(a: Int, b: Int): Int = {
var x = a
var y = b
while (y != 0) {
val r = x % y
x = y
y = r
}
x
}
```
最小公倍数:
```scala
def lcm(a: Int, b: Int): Int = {
a * b / gcd(a, b)
}
```
相关问题
使用Scala语言用while语句写一个输入两个正整数m和n,求最大公约数和最小公倍数
import scala.io.StdIn._
println("请输入两个正整数:")
val m = readInt()
val n = readInt()
var a = m
var b = n
while (b != 0) {
val temp = a % b
a = b
b = temp
}
val gcd = a
val lcm = m * n / gcd
println(s"最大公约数:$gcd")
println(s"最小公倍数:$lcm")
使用Scala语言写一个最大公约数和最小公倍数
最大公约数:
```scala
def gcd(a: Int, b: Int): Int = {
if (b == 0) a else gcd(b, a % b)
}
```
最小公倍数:
```scala
def lcm(a: Int, b: Int): Int = {
a * b / gcd(a, b)
}
```
阅读全文