一,循环语句
循环就是重复执行多次
object day01 {
def main(args: Array[String]): Unit = {
// 把 I miss you 重复输出 3000次
// while 循环的基本方式
/*
var i = 0 // 循环变量,控制重复的次数
while(条件){
循环体
i += 1
}
*/
var i = 1
while(i <= 3000){
println(s"${i},I miss you")
i += 1
}
}
}
案例:
object day03 {
def main(args: Array[String]): Unit = {
// 1 + 2 + 3 + 4 + 5 + ..... + 100 的结果
// 等差数列:(100+1) * 100 / 2 = 5050
var sum = 0
var i = 1
while(i<=100){
println(i)
i += 1
}
println(sum)
}
}
object day04 {
def main(args: Array[String]): Unit = {
// 求 1 + 1/2 + 1/3 + 1/4 + 1/5 + ..... + 1/100 的和
var sum = 0
var i = 1
while(i<=100){
i +=1
}
println(s"sum=${sum}")
}
}
二,while死循环
object si1 {
def main(args: Array[String]): Unit = {
while(true){
var year = scala.io.StdIn.readInt()
if(year%400 ==0 || (year%4==0 && year%100 !=0)) {
println(s"$year 是闰年")
} else {
println(s"$year 不是闰年")
i += 1
}
}
}
}
三,break
object day05 {
def main(args: Array[String]): Unit = {
// 从循环中跳出来?
// 输入 0 就结束判断
breakable {
while (true) {
println("请输入要判断的年份(输入0就结束判断):")
// 判断用户输入的年份,是否闰年
val year = scala.io.StdIn.readInt()
if (year == 0) {
// 结束循环
break
}
if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) {
println(s"${year} 是闰年")
} else {
println(s"${year} 不是闰年")
}
}
}
println("死循环结束了.....系统退出")
}
}
四,do while 语句
object day06 {
def main(args: Array[String]): Unit = {
// do while: 无论条件是否成立,都会执行一次!
// while: 如果条件不成立,不会执行!
// var i = 100
// do {
// println(i)
// i += 1
// } while (i <= 10)
var i = 100
while (i <= 10){
println(i)
i += 1
}
}
}
例题:
object day07 {
def main(args: Array[String]): Unit = {
//
var sum:Double 0
var i = 1
while (i <= 101){
if ( i%2 == 1){
sum = sum + 1.0/ i // 1/3
} else {
sum = sum - 1.0/i
}
i+=1
}
println(s"sum=${sum}")
}
}