Java小程序计算圆周率代码

 更新时间:2017年09月11日 14:48:29   作者:磷火  
这篇文章主要介绍了Java小程序计算圆周率代码,有两种实现方法,喜欢的朋友可以参考下。

下面我们来介绍两种Java编程中实现计算圆周率的方法。

方法一:割圆法

计算公式为:

π≈3*2^n*y_n

其中,n代表割圆次数,y_n代表圆中内嵌正6*n边形的边长

package 计算π的近似值; 
import java.util.Scanner; 
public class Example { 
public static void main(String[] args) { 
 Scanner scan=new Scanner(System.in); 
 System.out.println("请输入割圆次数:"); 
 int n=scan.nextInt(); 
 cut(n); 
} 
static void cut(int n){ 
 double y=1.0; 
 for(int i=0;i<=n;i++){ 
 double π=3*Math.pow(2, i)*y; 
 System.out.println("第"+i+"次切割,为正"+(6+6*i)+"边形,圆周率π≈"+π); 
 y=Math.sqrt(2-Math.sqrt(4-y*y)); 
 } 
} 
} 

输出结果:

请输入割圆次数:
12
第0次切割,为正6边形,圆周率π≈3.0
第1次切割,为正12边形,圆周率π≈3.1058285412302498
第2次切割,为正18边形,圆周率π≈3.132628613281237
第3次切割,为正24边形,圆周率π≈3.139350203046872
第4次切割,为正30边形,圆周率π≈3.14103195089053
第5次切割,为正36边形,圆周率π≈3.1414524722853443
第6次切割,为正42边形,圆周率π≈3.141557607911622
第7次切割,为正48边形,圆周率π≈3.141583892148936
第8次切割,为正54边形,圆周率π≈3.1415904632367617
第9次切割,为正60边形,圆周率π≈3.1415921060430483
第10次切割,为正66边形,圆周率π≈3.1415925165881546
第11次切割,为正72边形,圆周率π≈3.1415926186407894
第12次切割,为正78边形,圆周率π≈3.1415926453212157

方法二:无穷级数法

求圆周率π的级数公式为:

Π=2*(1/1+1/3+1/3*2/5+1/3+2/5+3/7+1/3+2/5+3/7+4/9+···)

package 计算π的近似值; 
import java.util.Scanner; 
public class Example1 { 
 public static void main(String[] args) { 
  Scanner scan=new Scanner(System.in); 
  System.out.println("请输入精度:"); 
  double z=scan.nextDouble(); 
  System.out.println("在精度为"+z+"的条件下,π约等于:\n"+jishuPI(z));  
 } 
 static double jishuPI(double z){ 
 double sum=2; 
 int n=1; 
 int m=3; 
 double t=2; 
 while(t>z){ 
  t=t*n/m; 
  sum=sum+t; 
  n++; 
  m+=2; 
 } 
 return sum; 
 } 
} 

输出为:

请输入精度:
1E-15
在精度为1.0E-15的条件下,π约等于:
3.141592653589792

总结

以上是圆周率π的计算方法的全部内容,希望对大家有所帮助!

相关文章

  • SpringBoot详解如何实现读写分离

    SpringBoot详解如何实现读写分离

    当响应的瓶颈在数据库的时候,就要考虑数据库的读写分离,当然还可以分库分表,那是单表数据量特别大,当单表数据量不是特别大,但是请求量比较大的时候,就要考虑读写分离了.具体的话,还是要看自己的业务...如果还是很慢,那就要分库分表了...我们这篇就简单讲一下读写分离
    2022-05-05
  • Java服务器处理图片上传的方法

    Java服务器处理图片上传的方法

    这篇文章主要为大家详细介绍了Java服务器处理图片上传,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-06-06
  • Java 线程池详解及实例代码

    Java 线程池详解及实例代码

    这篇文章主要介绍了Java 线程池的相关资料,并符实例代码,帮助大家学习参考,需要的朋友可以参考下
    2016-09-09
  • Java实现多文件压缩打包的方法

    Java实现多文件压缩打包的方法

    这篇文章主要介绍了Java实现多文件压缩打包的方法,结合实例形式分析了java实现zip文件压缩与解压缩相关操作技巧,需要的朋友可以参考下
    2017-06-06
  • Spring Boot利用Java Mail实现邮件发送

    Spring Boot利用Java Mail实现邮件发送

    这篇文章主要为大家详细介绍了Spring Boot利用Java Mail实现邮件发送,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-02-02
  • 快速定位Java 内存OOM的问题

    快速定位Java 内存OOM的问题

    这篇文章主要介绍了快速定位Java 内存OOM的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • IDEA 2022.1.4用前注意事项

    IDEA 2022.1.4用前注意事项

    这篇文章主要介绍了IDEA 2022.1.4用前注意事项,本文通过图文并茂的形式给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2024-08-08
  •  基于Java解决华为机试之字符串合并处理实操

     基于Java解决华为机试之字符串合并处理实操

    这篇文章主要介绍了基于Java解决华为机试之字符串合并处理,文章以实操展开主题内容,具有一的参考价值,需要的小伙伴可以参考一下,希望对工作中的你有所帮助
    2022-02-02
  • Java实现文件上传和下载的方法详解

    Java实现文件上传和下载的方法详解

    文件上传,也称为upload,是指将本地图片、视频、音频等文件上传到服务器上。文件下载,也称为download,是指将文件从服务器传输到本地计算机的过程。本文将用Java实现文件上传和下载,需要的可以参考一下
    2022-09-09
  • SpringBoot实现对Http接口进行监控的代码

    SpringBoot实现对Http接口进行监控的代码

    Spring Boot Actuator是Spring Boot提供的一个模块,用于监控和管理Spring Boot应用程序的运行时信息,本文将介绍一下Spring Boot Actuator以及代码示例,以及如何进行接口请求监控,需要的朋友可以参考下
    2024-07-07

最新评论