日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java+卡有型号吗,第一次写java代码,就卡主了,真是惨,有木有大腿来帮忙调试一下...

發(fā)布時(shí)間:2024/10/8 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java+卡有型号吗,第一次写java代码,就卡主了,真是惨,有木有大腿来帮忙调试一下... 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

該樓層疑似違規(guī)已被系統(tǒng)折疊?隱藏此樓查看此樓

這是一個(gè)用高斯公式,計(jì)算圓周率pi的代碼,可惜我不會(huì)java,只能憑空想想百度自己寫寫,結(jié)果就是運(yùn)行不了啊,求大腿

/*高斯公式 參考網(wǎng)址 http://www.cqvip.com/read/read.aspx?id=33099664

pi/4=12*arctan(1/18)+8*arctan(1/57)-5*arctan(1/239)

arctanx=x-x^3/3+x^5/5-x^7/7+...

這里的x相當(dāng)1/18,1/57,1/239.

比如當(dāng)精度1,只計(jì)算x-x^3/3時(shí)

x=1/18 1/18-(1/18)^3/3=0.055498399634202

x=1/56 0.01754205972508

x=1/239 0.0041840760018183

pi=(0.055498399634202*12+0.01754205972508*8-0.0041840760018183*5)*4=3.1415875736079

*/

package arct;

import java.math.*;

public class arct{

//高斯計(jì)算arctanx

public static BigDecimal arct(int a,int b){//方法arct計(jì)算arctanx,a為18,57,239等整數(shù).b為精度

BigDecimal f=new BigDecimal(Integer.toString(1));//定義變量f,控制符號變量f

BigDecimal dd=new BigDecimal(Integer.toString(1));//定義變量dd

BigDecimal d = new BigDecimal( Integer.toString(a)); //改變a的值類型

BigDecimal b1= new BigDecimal(Integer.toString(1)); //定義一個(gè)初始值為1的變量,用來當(dāng)分母初始值

BigDecimal d2=b1.multiply(d);//定義d2的值為x每次多的次方x^2

BigDecimal r=d;//定義r,最后作為返回結(jié)果

int i=1;

for (i = 1; i <= b; i++) {//循環(huán)控制精度

b1=b1.add(new BigDecimal(Integer.toString(2)));//分母值每次+2

d=d.multiply(d2);//分子值每次乘以d2(x^2)

dd=d.multiply(b1);//2者相乘

if( i%2 == 1){//if語句改變運(yùn)算符號

f=new BigDecimal(Integer.toString(-1));

}

else if ( i%2 == 0){

f=new BigDecimal(Integer.toString(1));

}

dd=f.divide(dd);//根據(jù)符號變量f,f控制符號的同時(shí)作分子

r=r.add(dd);

}

return r;}

public static void main(String[] args) {

//高斯pi/4=12*arctan(1/18)+8*arctan(1/57)-5*arctan(1/239)

Long startTime = System.currentTimeMillis();

BigDecimal d1=arct.arct( 18,100);//調(diào)用arctg方法計(jì)算arctanx

BigDecimal d2=arct.arct(57,100);

BigDecimal d3=arct.arct(239,100);

d1=d1.multiply(new BigDecimal(Integer.toString(48)));//高斯公式arctan前的系數(shù)

d2=d2.multiply(new BigDecimal(Integer.toString(32)));

d3=d3.multiply(new BigDecimal(Integer.toString(20)));

BigDecimal p=new BigDecimal(Integer.toString(0));//定義pi

p=d1.add(d2);

p=p.min(d3);

System.out.println(p); //輸出pi

Long endTime = System.currentTimeMillis();

System.out.println(endTime - startTime);//輸出程序運(yùn)行時(shí)間

}}

總結(jié)

以上是生活随笔為你收集整理的java+卡有型号吗,第一次写java代码,就卡主了,真是惨,有木有大腿来帮忙调试一下...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。