【问题标题】:JAVA: How to write a loop that computes sum of seriesJAVA:如何编写一个计算系列和的循环
【发布时间】:2018-06-30 18:27:27
【问题描述】:

我如何编写一个循环来计算以下系列的总和,如果 系列是1 - 1/2 + 1/3 - 1/4 + 1/5 - 1/6 ....?

计算直到分母为 1000。即 1/1000 并打印结果值?

【问题讨论】:

  • 到目前为止尝试了什么?
  • 您可以使用键盘。
  • @Guy 键盘?噗,real programmers use butterflies.
  • 那么你的任务有什么进展吗?到目前为止你有没有尝试过?使用您尝试过的内容编辑您的帖子,您会看到人们会变得更好!

标签: java sum series


【解决方案1】:
double sum = 0;
for(int i=1; i<=1000; i++) {
    sum += (double) 1 / (double) i * (double) Math.pow(-1, i + 1);
}
System.out.println(sum);

在此,i 是您的分母,该分母会随着该系列所基于的序列中的每个项目而递增。 -1 的 (i + 1) 次方使符号以所需的方式从 - 切换到 +。

但是,这是非常基本的东西。如果您需要提出此类问题,也许您想考虑阅读有关编程或数学的书籍或做一些在线教程。

【讨论】:

  • 如果你对函数/类不满意double sum=1; for(int i=2;i&lt;=1000;i++) { if(i%2!=0) {sum+=1.0/i;} else {sum-=1.0/i;} } System.out.println("result= "+sum); }
  • @Allan 考虑到大于 1000 的分母界限的运行时行为,这也是一个好主意。当i 变得非常大并且编译器/解释器在转换为时不会以某种方式缩写函数时汇编代码,最终可能需要一些时间来计算 (i + 1) 次方。
猜你喜欢
  • 1970-01-01
  • 2013-10-25
  • 2019-09-08
  • 1970-01-01
  • 2018-08-07
  • 2014-10-21
  • 1970-01-01
  • 2021-11-25
  • 1970-01-01
相关资源
最近更新 更多