我正在為我的 Java 類編寫這個簡單的 pi 計算器,作為我們學習基本循環的一部分,似乎一切正常,除了為 pi 打印的值是無窮大時,它應該是 3.14 ......根據迭代次數. 我讀到這可能與雙變量除以 0 相關,它給出了一個奇怪的無窮大輸出而不是正常的 Java 運行時異常?這是我的代碼:package lab05;public class Lab05 { public static void main(String[] args) { // Variable declarations double pie = 3; double savepie = 0; double term = 0; double savei = 0; double sign = 1; boolean isRangeFound = false; int i; // For loop for (i=0; i <= 1000;) { // Only up to 1000 iterations before loop must end. term = (sign * 4) / ((2*i) * (2*i+1) * (2*i+2)); pie = pie + term; sign = (-1 * sign); if (isRangeFound==false && (pie >=3.14159265 & pie < 3.14159266)) { savepie = pie; savei = i; isRangeFound = true; } if (i == 200||i == 500||i == 1000) { System.out.print("The value of \u03C0 is: "); System.out.printf("%.10f",pie); System.out.print(" when i = " + i); System.out.println(" "); } i++; } // Final output statement System.out.println ("The number of iterations to get to 3.14159265 is " + savei + "."); System.out.printf("\n\u03C0 = %.10f",savepie); System.out.println(" "); } }這是我在 Netbeans 中的輸出:The value of π is: Infinity when i = 200 The value of π is: Infinity when i = 500 The value of π is: Infinity when i = 1000 The number of iterations to get to 3.14159265 is 0.0.π = 0.0000000000 BUILD SUCCESSFUL (total time: 0 seconds)這是我應該遵循的說明的鏈接,以及我試圖遵循 T 的 Visual Logic 流程圖。謝謝。 https://www.dropbox.com/s/2m26a32afedk9yu/Lab05%20Assignment%281%29.pdf?dl=0
添加回答
舉報
0/150
提交
取消