While循环
while语句的格式:
while(条件) {// 满足条件就执行,如果条件一直满足, 循环体 就一直执行。
i+=1
}
案例1:把1,2,3,4,5.....100中的奇数输出
示例代码如下:
object day14 {
def main(args: Array[String]) = {
//把1,2,3,4,5.....100中的奇数输出
//方法1:
var i=1
while(i<=100){
println(i)//println重复了100次
i+=2
}
//方法2:
var a=1
while (i<=100){
if(i%2!=0){
println(i)
}
}
}
}
案例2:求1-100的和
示例代码如下:
object day14 {
def main(args: Array[String]): Unit = {
var sum = 0
var i = 1
while(i <= 100){
sum=sum +i
i += 1
}
println(s"sum=${sum}")
}
}
案例3:1~100的奇数和
示例代码如下:
object day15 {
def main(args: Array[String]) = {
var sum=0
var i=1
while(i<=100){
sum=sum+i
i+=2
}
println(s"sum=${sum}")
}
}
案例4:求1/1+1/2+1/3+...1/100的和
示例代码如下:
object day15 {
def main(args: Array[String]) = {
var sum=0.0
var i=1
while(i<=100){
sum=sum+1.0/i
i+=1
}
println(s"sum=${sum}")
}
}
while死循环
在需要一直执行的时候,就可以使用死循环,它能确保核心逻辑一直被调用中.
案例5:判断用户的输入的内容是否是闰年及退出判断。
import scala.util.control.Breaks.{break, breakable}
object day16 {
def main(args: Array[String]) = {
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 {
statement(s);
} while( 条件 );
do wile 和while的区别
do while:无论条件是否成立,都会执行一次
示例代码如下:
var a=100
do{
println(a)
a+=1
}while(a<=10)
while:如果条件不成立就不会执行
示例代码如下:
var i=100
while(i<=10){
println(i)
i+=1
}
案例6:求1-1/2+1/3-1/4+1/5+...+1/19的和
代码如下:
var sum=0.0
var i=1
while(i<=100){
if(i%2==1){
sum=sum+1.0/i
}else{
sum=sum-1.0/i
}
i+=1
}
println(s"sum=${sum}")