题目大意:input为一个任意数,然后最后返回这个数所有的最简因子的list。如输入input Int 36会返回Ints list:[2,2,3,3].
附加条件:当input小于或等于0 和1时,直接返回空集;返回值的列表(list)里不包含1.
题目大意:input为一个任意数,然后最后返回这个数所有的最简因子的list。如输入input Int 36会返回Ints list:[2,2,3,3].
附加条件:当input小于或等于0 和1时,直接返回空集;返回值的列表(list)里不包含1.
以下回答参考 皆我百晓生、券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。
import scala.collection.mutable.ListBuffer
object Main {
def main(args: Array[String]): Unit = {
println(s"请输入一个正整数")
val input = scala.io.StdIn.readInt()
if (input <= 0 || input == 1) {
println("结果为空集")
return
}
val factors = getFactors(input)
factors.foreach(println)
}
def getFactors(num: Int): List[Int] = {
var factorList = new ListBuffer[Int]
for(i <- 1 to num){
if(num % i == 0 && i != 1){
factorList += i
}
}
factorList.toList
}
}