「java中求圆周率的调用」java用类的方法求圆的周长和面积

博主:adminadmin 2023-01-21 03:54:08 688

今天给各位分享java中求圆周率的调用的知识,其中也会对java用类的方法求圆的周长和面积进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

Java求圆周率。要求for里面套if这种格式

你的求圆周率的Java程序中,for循环中if的退出循环的条件写反了,if(1.0/i1.0E-6)应该改成if(1.0/i1.0E-6)

完整的Java程序如下(改动的地方见注释)

package zuoye7;

public class zuoye7{

public static void main(String[] args){

int i,sign=1;

double item,pi=0;

for(i=1;;i+=2){

item=sign*1.0/i;

if(1.0/i1.0E-6) //这里把改成

break;

pi=pi+item;

sign=-sign;

}

pi=4*pi;

System.out.printf("pi=%.6f\n",pi);

}

}

java中π怎么表示, 是直接用π吗?还是有别的变量代替?

java中π用Math.PI表示,圆周率常量π被定义在java.lang.Math类中。输出:3.141592653589793

代码如下:

PI (π)的源码如下:

/**

* The {@code double} value that is closer than any other to

* ipi/i, the ratio of the circumference of a circle to its

* diameter.

*/

public static final double PI = 3.14159265358979323846;

扩展资料:

Java Math 类包含了用于执行基本数学运算的属性和方法,如初等指数、对数、平方根和三角函数。

Math 的方法都被定义为 static 形式,通过 Math 类可以在主函数中直接调用。

比较常见的还有一个底数e,在java Math中表示如下:

public static final double E = 2.7182818284590452354;

参考资料:

Orcale官方API接口-Class Math

java圆周率计算

原理:根据圆面积的公式:s=πR2,当R=1时,S=π。由于圆的方程是:x^2+y^2=1(x^2为X的平方的意思),因此1/4圆面积为x轴、y轴和上述方程所包围的部分。如果在1*1的矩形中均匀地落入随机点,则落入1/4园中的点的概率就是1/4圆的面积。其4倍,就是圆面积。由于半径为1,该面积的值为π的值。程序如下:importjava.util.Random;publicclasspai{/***@paramargs*/publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstubintN=100000;/*定义随机点数*/intn=0,i,resulttimes;doubler;doublex,y;/*坐标*/Randoms=newRandom();for(resulttimes=0;resulttimes10;resulttimes++){/*输出十次结果*/for(i=1;i=N;i++){x=s.nextDouble();/*在0~1之间产生一个随机x坐标*/y=s.nextDouble();/*在0~1之间产生一个随机y坐标*/if(x*x+y*y=1.0)n++;/*统计落入单位圆中的点数*/}r=(double)n/N;System.out.println("Theresultofpaiis"+r*4);/*计算出π的值*/n=0;}}}

用Java计算圆周率

代码如下:

//圆周率 π = 4∑(k=0,..∞)(-1)^k/(2k+1)

//π = 3.14159265358979323846

public class yzq {

public static void main(String[] args) {

// TODO Auto-generated method

stub

int n=0;

double a=0;

for (n=0;n=10000000;n++ )

{

a = a + 4*Math.pow(-1,n)/(2*n+1);

System.out.println("第 "+n+"

"+a);

}

System.out.println("最后一位

"+a);

}

}

//程序运行结果

//第10

次计算

3.232315809405594

//第100

次计算

3.1514934010709914

//第1000

次计算

3.1425916543395442

//第10,000

次计算

3.1416926435905346

//第100,000

次计算

3.1416026534897203

//第1000,000

次计算

3.1415936535887745

//第10,000,000次计算

3.1415927535897814

//第100,000,000次计算

3.141592643589326

//第999,999,990次计算

3.1415926545880506

//第999,999,991次计算

3.1415926525880504

//第999,999,992次计算

3.1415926545880506

//第999,999,993次计算

3.1415926525880504

//第999,999,994次计算

3.1415926545880506

//第999,999,995次计算

3.1415926525880504

//第999,999,996次计算

3.1415926545880506

//第999,999,997次计算

3.1415926525880504

//第999,999,998次计算

3.1415926545880506

//第999,999,999次计算

3.1415926525880504

//第1,000,000,000次计算

3.1415926545880506

Java求圆周率

这里面有类型转换的问题,如果你用1,那1/a-1/(a+2)这个算式出来的是int类型,如果是1.0那就是double类型

JAVA 求圆周率

建议你这样试试看:

 我们分析下题目,考虑一下容易忽略的地方

 然后我们将公式转化为如下代码:

package cn.com.baidu.zhidaoquestion.pi;

public class StrivesForThePI {

public static void main(String[] args) {

System.out.println("jdk的API中提供的π = "+Math.PI);

//arctg()函数参数x;

double x = 1;

//验证 π/4 = arctg(1);

double qtrPI = strives(x);

//求π并输出

System.out.println("π = " + 4*qtrPI);

}

/**

 * 求解函数

 * @return double s

 */

public static double strives(double x){

int i = 1 ;

double n = 1, d = 0.000001,s = 0,sTmp = 1;

double errorRange =  ssTmp?s-sTmp:sTmp-s;

while(errorRange  d){//误差控制,由s和sTemp的差决定误差 ,

//如果i=偶数  i = (-1)*i

if(i%2==0){

n = (-1);

}else{

n = 1;

}

//保存中间值,计算误差使用

sTmp = s;

//计算Arg

s = s + n*((double)x/(2*i-1));

//误差范围 排除第一项

if(i!=1){

errorRange = ssTmp?s-sTmp:sTmp-s;

}

i++;

}

System.out.println("误差为:"+errorRange);

if(x==1){

System.out.println("π/4 = " + s);

}

return s;

}

}

这样做的好处:思路清晰,注释明了

注意事项:这个并不是唯一的答案,还可以优化,欢迎大家自由讨论.

如有帮助,感谢你的采纳!

java中求圆周率的调用的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java用类的方法求圆的周长和面积、java中求圆周率的调用的信息别忘了在本站进行查找喔。