for 循环部分
- 代码
for(i <- 1 to 100 by 2) 中,i 是循环变量,1 to 100 表示循环范围是从 1 到 100(包含 100),by 2 表示步长为 2,也就是每次循环 i 的值增加 2。这样循环下来,i 依次会取 1、3、5……99 这些奇数,然后通过 println(i) 输出这些奇数。
while 循环部分(注释状态)
- 代码
var i = 1 定义了变量 i 并初始化为 1。
while(i <= 100) 是 while 循环的条件,只要 i 小于等于 100,循环就会继续。
println(i) 用于输出当前的 i 值。
i += 2 表示每次循环后 i 的值增加 2,这样就能依次取到奇数。如果取消这部分代码的注释,也能实现输出 1 到 100 之间奇数的功能。
object base20 {
def main(args: Array[String]): Unit = {
val n = 97
var isPrime = true
// 修正后的for循环判断逻辑
for (i <- 2 until n if isPrime) {
if (n % i == 0) {
isPrime = false
}
}
if (isPrime) {
println(s"$n 是素数")
} else {
println(s"$n 不是素数")
}
}
}
import scala.util.control.Breaks.{break, breakable}
object base21 {
def main(args: Array[String]): Unit = {
val n = 97
var isPrime = true
breakable {
for (i <- 2 to Math.sqrt(n).toInt) {
if (n % i == 0) {
println(s"$i 能整除")
isPrime = false
break
}
println(i)
}
}
if (isPrime) {
println(s"${n}是素数")
} else {
println(s"${n}不是素数")
}
}
}