多重循环

34 阅读1分钟

嵌套循环

会执行多少次?

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

99乘法表

第一种写法

object Base26 {
  def main(args: Array[String]): Unit = {
    for(i <- 1 to 9){
      for (j <- 1 to i){
          print(s"${j}*${i}=${i*j}  " )
      }
      println()
    }
  }
}

第二种写法

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

object Base27 {
  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()
    }
  }
}

多少种方式买

object Base28 {
  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)
          }
        }
      }
    }
  }
}