Scala的多重循环

76 阅读1分钟

(1)多重循环的基本使用

1基本格式:
for ( 循环变量 <- 数据集) {  
  for(){  
    for(){  
    }  
  }  
}
2.说明:

1.for可以替换成while循环

2.循环的嵌套可以有多个,数量不限。

3.里外层循环执行的次数不相同。

(2)案例

1.公鸡(鸡翁)1只,价格5钱;母鸡(鸡母)1只,价格3钱;小鸡(鸡雏)3只,价格1钱(即1钱买3只小鸡);用100钱买100只鸡,问公鸡、母鸡、小鸡各有多少只?

代码:

object basic19 {

  def main(args: Array[String]): Unit = {
    for(x <- 0 to 20){
      for(y <- 0 to 33){
        var z = 100 - x - y
        if(5*x + 3*y + 2/3 == 100){
          println( x , y , z)
        }
      }
    }
  }
}
2.打印出乘法表

代码:

object basic20 {
  def main(args: Array[String]): Unit = {
    for(i <- 1 to 9){
      for(j <-1 to i){
//        print(s"${i}×${j}=${i*j}")
        printf("%d×%d=%-3d",j,i,i*j)
        //%d  表示一个占位符,表示会以整数的格式表输出对应的值。
        //%3d  表示一个占位符,表示会以整数的格式表输出对应的值,这是数字占3个字符的宽度,左对齐。
      }
      println()
    }
  }

}