案例

89 阅读1分钟

1.求:s=1-1/2+1/3-1/4+....+1/19的值 已知:1+2+3+4+5....+19=? 问题1:1+1/2+1/3-1/4+....+1/19 问题2:s=1-1/2+1/3-1/4+....+1/19

object t112 {
  def main(args: Array[String]): Unit = {   
   //已知:1+2+3+4+5....+19=?
//    var i = 1
//   var sum = 0
//   while(i <= 19){
//      println(i)
//     sum += i //等价于sum = sum +1
//      i = i + 1
//    }
//println(s"${sum}")
    //问题1:1+1/2+1/3-1/4+....+1/19
    var i = 1
    var sum1 = 0.0  //
    while(i <= 19) {
      sum1 += 1.0 / i  //
      i += 1
    }
    // 问题2:1 - 1/2 + 1/3 - 1/4 + ... ±1/19
    var sum2 = 0.0
    i = 1  // 
    while(i <= 19) {
      if(i % 2 == 1) {
        sum2 += 1.0 / i
      } else {
        sum2 -= 1.0 / i
      }
      i =i + 1
    }
    println(s"${sum1}")
  }
}

2.判断是否素数

object t111 {
  def main(args: Array[String]): Unit = {
   //判断一个数。是不是素数?
   // 素数:只有1和它本身能被整除
  //2,3,4,5,7,11,13,...,97
  //思路
  //1.假设它是一个素数
  //2.循环
  //使用2,3,4,num-1 去除num。如果能被 整除。说明num不是素数
  println(Math.sqrt(97))
  var num = 97
  var isPrime = true//假设是素数
  var i = 2

  breakable {
    while (i <= Math.sqrt(num) - 1) {
      if (num % i == 0) {
        isPrime = false
        println(s"${num}能被 ${i}整除")
        break
      }
      i += 1
    }
  }
    if(isPrime){
      println(s"${num} 是素数")
    } else{
      println(s"${num} 不是素数")
    }
  }
}

3.(1).求它第10年结束时有多少元? (2).多少年结束之后超过1000元?

object t113 {
  def main(args: Array[String]): Unit = {
//1.求它第10年结束时有多少元

//    var i = 0
//    var money = 1.0//本金
//    while(i < 10){
//      money = money * 1.1
//      i = i + 1
//      println(s"第${i}年结束时,钱数为${money}")
//    }

//2.多少年结束之后超过1000元?
    var i = 0
    var money = 1.0
    while(i <= 1000){
      money = money * 1.1
      i = i + 1
      println(s"第${i}年结束时,钱数为${money}")
    }
    println(i)
  }
}

4.(1).输出 1 - 10

object t23 {
  def main(args: Array[String]): Unit = {
//(1).输出 1 - 10
    var i = 1
    while(i<=10){
      println(i)
      i += 1
    } 
for (i <- 1 to 10) {
  println(i)
}

//(2)    1 3 5 7 9 ... 99
//    by:步长。x循环变量每次增加的值。默认就是1
 //   for(i <- 1 to 100 by 1) <===> for(i <- 1 to 100)
    var sum = 0
    for(i <- 1 to 100 by 2){
      println(i)
      sum += i 
    }
    println(sum)
 }
}