9.嵌套循环

67 阅读1分钟

for 嵌套循环

代码如下:
object Base30 {
  def main(args: Array[String]): Unit = {
    var n = 0
    for (i <- 1 to 10){
      for (j <- 5 to 20){
        for (k <- 1 to 10){
          n += 1
          println(n,k,i,j)
        }
      }
    }
  }
}

如何输出以下内容:

屏幕截图 2025-09-25 084519.png

代码如下:
object Base31 {
  def main(args: Array[String]): Unit = {
    for(i <- 1 to 5){
      for(j <- 1 to i){
        print(i)
      }
      println()
    }
  }
}

用嵌套循环实现九九乘法表

代码如下:
object Base32 {
  def main(args: Array[String]): Unit = {
    for (i <- 1 to 9){
      for (j <- 1 to i){
        printf("%d*%d=%-4d",j,i,i*j)
      }
      println()
    }
  }
}
结果:
1*1=1   
1*2=2   2*2=4   
1*3=3   2*3=6   3*3=9   
1*4=4   2*4=8   3*4=12  4*4=16  
1*5=5   2*5=10  3*5=15  4*5=20  5*5=25  
1*6=6   2*6=12  3*6=18  4*6=24  5*6=30  6*6=36  
1*7=7   2*7=14  3*7=21  4*7=28  5*7=35  6*7=42  7*7=49  
1*8=8   2*8=16  3*8=24  4*8=32  5*8=40  6*8=48  7*8=56  8*8=64  
1*9=9   2*9=18  3*9=27  4*9=36  5*9=45  6*9=54  7*9=63  8*9=72  9*9=81  

%d 是表示占位符,这要填入一个整数

%-4d 表示一个占位符,这要填入一个整数,并且:一共四位,左对齐

公母小鸡的购买

object Base33 {
  def main(args: Array[String]): Unit = {
    var k = 0
    for (gj <- 0 to 100){
      for (mj <- 0 to 100){
        var xj = 100 - gj -mj
        if(xj >= 0 && xj%3 == 0){
          if(gj*5 + mj*3 + xj/3 == 100){
            k += 1
            println(k,gj,mj,xj)
          }
        }
      }
    }
  }
}