计算级数

计算并输出前n项之和的Sn,直到Sn刚好大于或等于q为止,其中,q为大于0的整数,其值通过键盘输入。
Sn=2+3/2+4/3+…+(n+1)/n
若q的值为50,则输出应为Sn=50.416695

方法一

直接在REPL上编程计算。
在这里插入图片描述

方法二

以脚本的方式编程计算(无对象名和main方法)

首先,在你的目录下创建一个子目录,在子目录里创建 .scala文件
然后,编程计算

import io.StdIn._

    var q = readInt()
    var n = 1.0
    var Sn = 0.0
    
    while ( Sn < q ) 
        { 
          Sn = Sn + (n+1)/n
          n += 1
        }
    printf(s"Sn=$Sn")
    

在Scala上执行 :load /home/hadoop-wsy/wangshouyin/workspace/jsjs.scala命令,其中/home/hadoop-wsy/wangshouyin/workspace/jsjs.scala是你脚本文件的路径
在这里插入图片描述

方法三

以脚本的方式编程计算(有对象名和main方法)


import io.StdIn._
object js{
def main(args:Array[String]){
    var q = readInt()
    var n:Float = 1 
    var Sn = 0.0
    
    while ( Sn < q ) 
        { 
          Sn = Sn + (n+1)/n
          n += 1
        }
    printf(s"Sn=$Sn")
    
}
}

使用cd命令切换目录到你脚本文件所在目录,然后编译,运行

$ cd /home/hadoop-wsy/wangshouyin/workspace
$ scalac js.scala
$ scala -classpath . js

下面是已经编译完成的
在这里插入图片描述

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐