英语翻译这是一个java编程题,题目是英文的,想要翻译,如果能完成程序编写,追加100分Pi can be calcul

学习 时间:2026-04-07 16:43:23 阅读:1918
英语翻译这是一个java编程题,题目是英文的,想要翻译,如果能完成程序编写,追加100分Pi can be calculated using the following sum,which is an approximation to Pi/4 :PiSum = 1 - 1/3 + 1/5 - 1/7 + ...+ (-1)^n / (2*n + 1)1) Write two methods that return PiSum for a specified value of n,one methodusing recursion and the other using iteration to do the sum.Hint:instead of calculating (-1)^n,you can check whether the nth term isnegative by checking whether n%2 (i.e.n modulo 2) is 1.Assume that the methods are always called with a non-negative value of n,so youdon't need to worry about dealing with invalid parameter values.2) Show the additional code you would add to the above methods to throw anexception if n is less than zero (you don't need to rewrite the whole method).Theexception handler should generate an error message saying that the number of termsin the sum must not be negative.Write a code fragment (i.e.it doesn't need to be a complete method) that invokesone of the methods for calculating Pi and prints out the result if the method returnscorrectly,or else catches an exception and prints out the error message returned.3) When calculating Pi using the given formula,suppose that instead of passing aparameter specifying the number of terms n in the sum,we instead want to pass aparameter that specifies a precision value.The sum should terminate at the first valuen for which the absolute value of the nth term in the sum,i.e.1/(2*n+1) is less thanthe specified precision.Show how this can be implemented using a do loop.

最佳回答

洁净的指甲油

追寻的宝马

2026-04-07 16:43:23

我有一个类似的代码。将就着用把大概意思是一样的只是没有异常处理public class a2and5{public static void main(String [] agrs){int count=0;double pi=0。0,l=1。0,diff,pi1;diff=1;while(Math。abs(diff)>0。01){ pi1=pi;pi+=((4。0/(count*2。0+1。0))*l); l*=-1。0;System。out。print(pi+" "+count+"\n");count++;diff=pi1-pi;}}}

最新回答共有2条回答

  • 受伤的盼望
    回复
    2026-04-07 16:43:23

    我有一个类似的代码。将就着用把大概意思是一样的只是没有异常处理public class a2and5{public static void main(String [] agrs){int count=0;double pi=0。0,l=1。0,diff,pi1;diff=1;while(Math。abs(diff)>0。01){ pi1=pi;pi+=((4。0/(count*2。0+1。0))*l); l*=-1。0;System。out。print(pi+" "+count+"\n");count++;diff=pi1-pi;}}}

上一篇 Can you please[]me with swimming?

下一篇 作文题目:假如我是【父亲,母亲,xxxx}