/**
* @(#)precision1.java
*
* precision1 application
*
* @author
* @version 1.00 2013/11/15
*/
public class precision1 {
public static void main(String[] args) {
// TODO, add your application code
int x = 4;
double increment = 1 ;
double coefficient = 1;
double currentValue = 1;
double precision = 0.01;
for(int i = 1;increment>precision ;i++)
{
currentValue= Math.pow(x,i)*coefficient+currentValue;
increment= Math.abs (Math.pow(x,i)*coefficient);
coefficient = coefficient * (1/(i+1));
System.out.println("Current result: " + currentValue);
}
}
}
問題是:如果給出數字2,它應該詢問用戶的整數x和精度。它應該使用下面給出的公式,通過使用用戶輸入的x來計算e的冪的近似值。只要增量小於給定的精度值,程序就會停止計算。它也應該被寫爲一種方法,而不是直接在你的主要方法中。 java算法精度計算
和輸出應該是:
current result: 5.0
current result: 13.0
current result: 23.666666666666664
current result: 34.33333333333333
current result: 42.86666666666666
current result: 48.55555555555555
current result: 51.8063492063492
current result: 53.43174603174603
current result: 54.15414462081129
current result: 54.44310405643739
current result: 54.54818021484688
current result: 54.583205600983376
current result: 54.59398264287153
current result: 54.59706179769672
Result is 54.59706179769672
和我的代碼輸出爲:
Current result: 5.0
Current result: 5.0
不管詢問輸入部分,爲什麼我的代碼不工作的?
那麼,你在你的程序中得到什麼? (即具體是什麼它不工作?) –
其輸出電流 結果:5.0 目前的結果是:5.0 然後停止。 – Pumpkin
你也可以把它放在問題描述中嗎?它會有助於防止評論混亂/刪除。 –