Download presentation
Presentation is loading. Please wait.
Published byAllison Lant Modified over 10 years ago
1
1 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace
2
2 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3
3
3 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 { "1", "2", "3" } args[] { "1", "2", "3" }
4
4 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 args[] { "1", "2", "3" } a[] { 0.0, 0.0, 0.0 }
5
5 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 args[] { "1", "2", "3" } a[] { 0.0, 0.0, 0.0 } i 0
6
6 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 a[] { 1.0, 0.0, 0.0 } args[] { "1", "2", "3" } i 0
7
7 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 a[] { 1.0, 0.0, 0.0 } args[] { "1", "2", "3" } i 1
8
8 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 a[] { 1.0, 2.0, 0.0 } args[] { "1", "2", "3" } i 1
9
9 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 a[] { 1.0, 2.0, 0.0 } args[] { "1", "2", "3" } i 2
10
10 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" } i 2
11
11 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" } i 3 goes out of scope
12
12 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace i 0 % java Newton 1 2 3 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" }
13
13 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace 1.0 % java Newton 1 2 3 i 0 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" }
14
14 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace 1.0 c % java Newton 1 2 3 i 0 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" }
15
15 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 i 0 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" } c 1.0
16
16 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 i 0 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" } c 1.0
17
17 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 i 0 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" } c 1.0 t
18
18 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 i 0 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" } c 1.0 t
19
19 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 1.0 i 0 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" } c 1.0 t
20
20 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 1.0 i 0 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" }
21
21 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 1.0 i 1 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" }
22
22 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 1.0 i 1 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" } 2.0 c
23
23 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 1.0 i 1 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" } c 2.0
24
24 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 1.0 i 1 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" } c 2.0
25
25 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 1.0 i 1 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" } c 2.0 t
26
26 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 1.0 i 1 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" } c 2.0 t
27
27 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 1.0 i 1 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" } c 2.0 t 1.41
28
28 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 1.0 i 1 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" } c 2.0 t 1.41
29
29 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 1.0 i 1 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" } c 2.0 t 1.41 1.414213562373095
30
30 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 1.0 1.414213562373095 i 1 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" } 1.414213562373095
31
31 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 1.0 1.414213562373095 i 2 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" }
32
32 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 1.0 1.414213562373095 i 2 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" } 3.0 c
33
33 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 1.0 1.414213562373095 i 2 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" } c 3.0 1.7320508075688772
34
34 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 1.0 1.414213562373095 1.7320508075688772 i 2 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" }
35
35 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 1.0 1.414213562373095 1.7320508075688772 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" } i 3
36
36 public class Newton { public static double sqrt(double c) { double epsilon = 1E-15; if (c < 0) return Double.NaN; double t = c; while (Math.abs(t - c/t) > epsilon * t) t = (c/t + t) / 2.0; return t; } public static void main(String[] args) { double[] a = new double[args.length]; for (int i = 0; i < args.length; i++) a[i] = Double.parseDouble(args[i]); for (int i = 0; i < a.length; i++) System.out.println(Newton.sqrt(a[i])); } Function Call Trace % java Newton 1 2 3 1.0 1.414213562373095 1.7320508075688772 a[] { 1.0, 2.0, 3.0 } args[] { "1", "2", "3" }
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.