do while循环
do {
statement(s);
} while( condition );
(例子)输出1-10
var i=1
do{
println(s"i=$i")
i+=1
}while(i<= 10)
(注意)do ... while 和while的区别在于,do...while一定会执行一次
(例子)判断一个数是不是素数
import scala.util.control.Breaks.breakable
object Base23 {
def main(args: Array[String]): Unit = {
var num = 121
var isPrime = true // 假设是素数
var i = 2
while(i <= num - 1) {
if(num % i == 0) {
isPrime = false
println(s"${num} 能被 ${i} 整除")
}
i += 1
}
if(isPrime) {
println(s"${num} 是素数")
} else {
println(s"${num} 不是素数")
}
}
}
(例子)求s= 1 - 1/2 + 1/3 - 1/4 + 1/5 .... +1/19的值
object Main {
def main(args: Array[String]) = {
var sum:Double = 0
var i = 1
while(i <= 19) {
if(i%2 == 1){
sum += 1.0 / i
} else {
sum-=1.0
}
i += 1
}
println(s"sum=${sum}")
}
}
复利公式
(例子)假设某人的年化投资回报率是10%。也就是说投入1元之后:
第一年结束时有1.1元,计算过程是:1 *(1+10%) = 1.1
第二年结束时有1.21元,计算过程是:1.1*(1+10%) = 1.21元,
第三年结束时有1.331元,计算过程是:1.21*(1+10%) = 1.331元,
编写程序:
求它第10年结束时有多少元?
object Base24 {
def main(args: Array[String]): Unit = {
var i=0
var money=1.0
while(i<10){
money =money*1.1
i=i+1
println(s"第${i}年结束时,钱数为${money}")
}
}
}
多少年之后能超过1000元
object Base24 {
def main(args: Array[String]): Unit = {
var i=0
var money=1.0
while(money<=1000){
money =money*1.1
i=i+1
println(s"第${i}年结束时,钱数为${money}")
}
println(i)
}
}
for循环
for ( 循环变量 <- 数据集) {
// 循环体代码
}
(例子)1-100之间的奇数
object Base25 {
def main(args: Array[String]): Unit = {
for(i <- 1 to 100 by 2 ){
println(i)
}
}
}