【Java貓說】每日算法:#1-DoWhile實現特殊累加值

題目
計算1+1/3+1/5+1/7+···+1/(2×n+1)的值,要求使用while循環,且必須計算到1/(2×n+1)小於0.00001是爲止。當循環結束時,顯示上述表達式中的n的值,以及表達式的計算結果。算法

分析
咱們須要一個可變量來做爲n,題目要求用while,則判斷就是1/(2×n+1)小於0.00001時推出循環,一開始的n就給它爲1吧,0是乘不起來的,那麼最後須要n-1來獲得真正的n值ide

編碼編碼

public class Main {    public static void main(String[] args) {        //初始化n
        int n = 1;        //給定總值的初始值,還有累加的過分局部變量
        double dSum = 1.0,dTemp;        do {            //計算
            dTemp = 1.0/(2*n+1);            //累加
            dSum += dTemp;
            n++;
        }while (dTemp>=0.00001);        //打印n時記得要減去1
        System.out.println("循環結束時n的值是:"+(n-1));
        System.out.println("計算出的結果是:"+dSum);
    }

}

結尾
很好,你已經寫完了一個基本的小算法了。code

【Java貓說】每日算法:#1-DoWhile實現特殊累加值

相關文章
相關標籤/搜索