تصف هذه المقالة الحساب البسيط لـ PI في Java. شاركه للرجوع إليه ، على النحو التالي:
رأيت سؤالاً على الإنترنت هذين اليومين. من المعروف أنه يمكن حساب PI باستخدام الوظيفة 4 * (1 1/3 + 1/5 1/7 + ...) لحساب الأماكن العشرية الخمسة (حساب PI). لذلك كتبت عرضًا تجريبيًا صغيرًا يدويًا ، وكل شخص مرحب به لترك رسالة والتواصل وتقديم المشورة.
رمز المثال الكامل كما يلي:
حزمة الرياضيات ؛ فئة عامة pitest {private static int bytelimit = 5 ؛ // الحد من عدد الأرقام بعد العشرية/** * @author zhao33699 */public static void main (string [] args) {// todo method method tuto // من المعروف أن pi يمكن حسابها باستخدام الوظيفة 4 * ---- احسب PI // IDEA: حساب القيمة 5 بت وفقًا للصيغة أعلاه ، وقارنها بالقيمة 5 بت التالية ، إذا كانت هي النتيجة النهائية ، // إذا كانت مختلفة ، احفظ القيمة الجديدة واستمر في مقارنتها بالقيمة التالية حتى نفس pitemp = 0 ؛ // القيمة الأخيرة التي تم الحصول عليها (خمسة أماكن عشرية) مزدوجة pi = 0 ؛ // هذه القيمة التي تم الحصول عليها (خمسة أماكن عشرية) int i = 0 ؛ iii = 20 ؛ // الحد من نفس عدد المرات بينما (صحيح) {// عدد المرات التحكم إذا (i == 1000000) {break ؛ } double rs = 1 + 2 * i ؛ Double D = 1 / Rs ؛ if (i ٪ 2 == 0 && i! = 1) {b = b + d ؛ // system.out.println ("---"+i+"---------- ***"+b) ؛ } آخر {b = b - d ؛ // system.out.println ("---"+i+"----------- ***"+b) ؛ } i = i + 1 ؛ // system.out.println (b) ؛ pitemp = (b) * 4 ؛ // system.out.println (pitemp) ؛ . // إذا كانت النتيجة الأخيرة هي نفس النتيجة ، فقم بحد عدد الأوقات المتتالية -1 ؛ // إذا لم يكن الأمر هو نفسه ، بغض النظر عن عدد الأوقات المتتالية ، فإن النتيجة السابقة هي نفسها ، فقيت عدد الأوقات المتتالية لاستعادة القيمة الأولية ، وحفظ القيمة الجديدة في هذا الوقت ، والاستمرار في الاستعداد للمقارنة مع المرة القادمة IF (FinalPi == PI) "الوقت ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- System.out.println ("$ النهائي" + pi) ss = string.valueof (i) .SubString (bytelimit + 2 ، bytelimit + 3) ؛ // احصل على النقطة العشرية السادسة dd dd = double.parsedouble (s) (Ss.Compareto ("5")> = 0) {dd = dd + 0.00001 ؛نتائج التشغيل:
ملاحظة: فيما يلي بعض أدوات الحساب لتشير إلى:
أداة حساب حلول أحادية الإنترنت (Eq) عبر الإنترنت:
http://tools.vevb.com/jisuanqi/equ_jisuanqi
الآلة الحاسبة العلمية عبر الإنترنت use_advanced calculator calculator على الإنترنت:
http://tools.vevb.com/jisuanqi/jsqkeexue
الآلة الحاسبة على الانترنت calculator_standard:
http://tools.vevb.com/jisuanqi/JSQ
لمزيد من المعلومات حول خوارزميات Java ، يمكن للقراء المهتمين بهذا الموقع عرض الموضوعات: "بنية بيانات Java وبرنامج تعليمي الخوارزمية" ، "ملخص" Tips Java ".
آمل أن يكون هذا المقال مفيدًا لبرمجة Java للجميع.