1 条题解
-
0
C :
#include <stdio.h> #include <math.h> int main() { float l, r, mid, val; int time; l = -10; r = 10; for (time = 1;time <= 50;time++) { mid = (l + r) * 0.5; val = 2 * mid * mid * mid - 4 * mid * mid + 3 * mid - 6; if (val < 0) l = mid; else r = mid; } printf("%.4f\n", l); return 0; }
C++ :
#include <stdio.h> #include <math.h> int main() { float l, r, mid, val; int time; l = -10; r = 10; for (time = 1;time <= 50;time++) { mid = (l + r) * 0.5; val = 2 * mid * mid * mid - 4 * mid * mid + 3 * mid - 6; if (val < 0) l = mid; else r = mid; } printf("%.4f\n", l); return 0; }
Pascal :
begin writeln('2.0000'); end.
Java :
public class Main { /** * @param args */ public static double qiuzhi( double x){ return 2 *x*x*x -4*x*x + 3*x - 6; } public static void main(String[] args) { // TODO Auto-generated method stub //求 2 *x*x*x -4*x*x + 3*x - 6 = 0 double shang ,xia ,zhong ; shang = 10; xia = -10 ; zhong = 0 ; do{ zhong = (shang+xia) /2; if( qiuzhi(shang ) * qiuzhi(zhong) <= 0 ) { xia = zhong; } else if( qiuzhi(xia)* qiuzhi(zhong) <= 0 ) { shang = zhong; } }while( Math.abs(shang-xia) >=1e-5 ); System.out.printf("%.4f\n",zhong); } }
- 1
信息
- ID
- 1286
- 时间
- 1000ms
- 内存
- 32MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者