Scala趣味题之各位数之和大于各位数之积

效果图

Scala趣味题之各位数之和大于各位数之积_第1张图片

实现代码

def main(args: Array[String]): Unit = {
    //提示输入语句
    println("输入1000以内的数值")
    //读取
    var num = StdIn.readInt()
    //统计次数
    var count = 0;
    //循环 1 到我们输入的数
    for (i <- 1 to num){
      // i一会要用到 会除以本身 为了不影响循环 所以赋值给j
      var j = i;
      // 和值
      var sum = 0;
      // 乘积
      var c = 1;
      //无限循环 只要j>0
      while (j >0){
        // j%10为个位数 
        sum +=j%10
        
        c *= j%10
        // j除以10  如果 依旧 >0 那么  j%10 就会为十位数 依次类推
        j /=  10
      }
      //如果 和值大于乘积 count++ 且输出
      if (sum > c){
        count+=1
        println(i)
      }
    }

    println(s"从1到${num}各位数之和大于各位数之积的数共${count}个")



  }

 

你可能感兴趣的:(趣味题,scala)