while的循环
下面是while循环结构的例子
- 循环3000次i miss you
var i=0
while(i<3000){
println(s"${i},i miss you")
i=i+1
}
println("循环结束")
- 循环输出1~100奇数(1,3,5,7....),每行一个
var i=1
while (i<100){
if(i%2==1) {
println(i)
}
i+=1
}
- 1+2+3+4+....+100的结果
var sum=0
var i=1
while (i<=100){
sum+=i
i+=1
}
println(s"sum=$sum")
while的死循环
下面是while死循环的例子
- 判断输入的年份是否为闰年
while(true){
print("请你输入要判断的年份:")
var year=scala.io.StdIn.readInt()
if(year%400==0||(year%4==0 && year%100!=0)){
println(s"$year 是闰年")
}else {
println(s"$year 不是闰年")
}
}
- 算1-1/2+1/3-1/4+....+1/19的结果
//1-1/2+1/3-1/4+....+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}")
- 从键盘上面敲一个数看是不是素数
//从键盘上面敲一个数看是不是素数
var num=scala.io.StdIn.readInt()
var isPrime:Boolean=true
var i=2
while(i<=num-1){
if(num%i==0){
isPrime=false
}
i+=1
}
if(isPrime){
println(s"$num 是素数")
}else{
println(s"$num 不是素数")
}
- 小球落地高度问题,从100米高度落下来,弹多少次才小于0.5米。
var i=0 //落地的次数
var heigh:Double=100 //初始为100米
while(heigh>=0.5){
heigh=heigh/2
i+=1
println(s"经过${i}次落地之后,小球的高度是${heigh}")
}
println(s"--经过${i}次落地之后,小球的高度是${heigh},小于0.5米的--")
- 两个金钱问题:最开始的钱为1元,10年之后,总的钱变成了多少元;最开始的钱为1元,多少年之后,总的钱可以超过1000。
var i=0
var money:Double=1
while(i<10){
//每一年的钱,都在去年基础上增加10% ====== 乘以1.1
money=money * 1.1
i+=1
println(s"$i 年之后,有 $money 元")
}
println(s"10年之后,总的钱变成了: $money")
println(----------------------------------------------------)
var i=0
var money:Double=1
while(money<=1000){
//每一年的钱,都在去年基础上增加10% ====== 乘以1.1
money=money * 1.1
i+=1
}
println(s"$i 年之后,总的钱可以超过1000")