java计算方的值.docVIP

  • 2
  • 0
  • 约1.01万字
  • 约 9页
  • 2016-10-18 发布于贵州
  • 举报
java计算方的值

题目:计算函数 的值并画出图像并分析各种算法的效率 二分法及黄金分割法计算函数的程序 1.二分法程序: import java.math.*; import java.util.Scanner; public class Value1 { public static void main(String[] args) { int count=0?; double y1=0,y2=0,y3=0,y4=0?; double x1=0.1?; double x2=1?; Double x3=(x2-x1)*0.5+x1?; // 二分中点 double jd=1?; //精度 F a=new F()?; //初始化函数 y1=a.Zhi(x1)?; y2=a.Zhi(x2)?; y3=a.Zhi(x3)?; System.out.println(“?请输入精度?“)?; Scanner s=new Scanner(System.in)?; // 获取输入的精度 jd=s.nextInt()?; long startTime=System.nanoTime()?; // 获取程序开始时间 while(Math.abs(y3)Math.pow(10,( -jd-1))) { if(y30) { x1=x3; } else x2=x3; x3=(x2-x1)*0.5+x1; //用二分中点法向值靠近 y3=a.Zhi(x3); count++; } long endTime=System.nanoTime(); // 获得程序结束时间 long sum=endTime-startTime; String x6=x3.toString(); // 截取精度 String x7=x6.substring(0, (int) (jd+2)); System.out.println(“x的值为: “+x7); System.out.println(“y的逼近值为: “+y3); System.out.println(“运行程序所用的时间为: “+sum+” 纳纱”); System.out.println(“二分分割次数为: “+count); } } class F // 计算F(X)的函数 { double Zhi(double x) { double y=0?; y=1/x*(1-1/(Math.pow(1+x, 5)))-2?; return y; } } 程序运行结果: 精度为6时的结果 精度为8时的结果 2.黄金分割法程序: import java.math.*; import java.util.Scanner; public class Value2 { public static void main(String[] args) { int count=0?; double y1=0,y2=0,y3=0,y4=0?; double x1=0.1?; double x2=1?; Double x3=(x2-x1)*0.618+x1?; // 黄金中点 double jd=1?;

文档评论(0)

1亿VIP精品文档

相关文档