循环

51 阅读1分钟
for(i <- 1 to 5){

  println(i) //  输出几次?它由哪个循环变量的值所决定?

  for(j <- 10 to 15) {
    println(i,j)

外层循环

css
 体验AI代码助手
 代码解读
复制代码
/*
  * println("1")
  * println("22")
  * println("333")
  * println("4444")
  * println("55555")
   */
object d13 {
  def main(args: Array[String]) = {
    for(i <- 1 to 5) {  // 外层循环
      for(j <- 1 to i) {
        print(i)

99乘法表

scss
 体验AI代码助手
 代码解读
复制代码
for(i <- 1 to 9) {
  for(j <- 1 to 9){
    printf(s"${j}×${i}=${i*j}")
    printf("%d×%d=%-4d", j, i, i*j)

    /**
     * %d: 占位符, 会输出一个整数
     * %-4d: 占位符, 会输出一个整数,一共占据四个字符的空间大小,  左对齐!
     * %4d: 占位符, 会输出一个整数,一共占据四个字符的空间大小, 右对齐!
     */
  }
  println()

计算百鸡百钱的暴力求解

scss
 体验AI代码助手
 代码解读
复制代码
// 百鸡百钱
 /**
  * 设公鸡x,母鸡y,小鸡100-x-y
  * 同时 0 <= x <=  20, 0<=y<=33
  *    5x + 3y+ (100 - x - y)/3 = 100   (1)
  *
  *
  *
  *   暴力求解
  *   1.  (0,0,100)  代入  (1)看是否成立?
  *   2.  (0,1,99)   代入  (1)看是否成立!
  *   ...
  *   34.(0,33,37)   代入 (1)看是否处理
   */

 var k =0
 for(x <- 0 to 20){
   for(y <- 0 to 33){
     val z = 100 - x - y
     //代入 (1)
     if(5*x + 3*y +z/3 == 100){
       k += 1
       println(k,x,y,z)

作者:学习通转掘金 链接:juejin.cn/post/755545…
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。