// 把 I miss you 重复输出10次
// while 循环的基本要求
/*
var i 0 // 循环变量,控制循环的次数
while(条件){
循环体
i += 1
}
*/
var i = 0
while(i <= 10){
println(s"${i}. I miss you")
i += 1
}
练习1
把1,2,3,4,5,·····100中的奇数输出
// 把1,2,3,4,5,·····100中的奇数输出
var i = 1
while(i<=100){
if(i % 2 == 1) { // %是取余,奇数除以2余1
println(i) // println重复了100次
}
i +=1
}
练习2
1+2+3+4+5+···=100的结果
// 1+2+3+4+5+···=100的结果
// 等差数列: (100+1) * 100 / 2 = 5050
var sum = 0
var i = 1
while(i<=100){
println(i)
sum = sum + i
i += 1
}
println(sum)
练习3
求 1 + 1/2 +1/3 + 1/4 + ··· + 1/100的和
// 求 1 + 1/2 +1/3 + 1/4 + ··· + 1/100的和
var sum:Double = 0
var i = 1
while(i<=100){
println(i)
sum = sum + 1.0/i
i += 1
}
println(sum)
while死循环
在需要一直执行的时候,就可以使用死循环。例如,不停地判断用户的输入的内容是否是闰年。
例: 判断用户的年份,是否闰年
breakable{
while (true) {
print("请输入要判断的年份(输入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
// do while 无论条件是否成立
// while 如果条件不成立,不会执行!
/*
var i = 100
do {
println(i)
i += 1
} while (i<=100)
*/
var i = 100
while(i<=100){
println(i)
i += 1
}
练习4:
求s= 1 - 1/2 + 1/3 - 1/4 + 1/5 .... +1/19的值。
// 求s= 1 - 1/2 + 1/3 - 1/4 + 1/5 .... +1/19的值。
var sum:Double = 0
var i = 1
while(i <= 19) {
if(i%2 == 1){
sum += 1.0 / i
} else {
sum -= 1.0 / i
}
i += 1
}
println(s"sum=${sum}")