From abb62584688606f098dc1a9715c3681b5e11eada Mon Sep 17 00:00:00 2001 From: Eric Paci <3014947@stud.hs-mannheim.de> Date: Fri, 10 May 2024 12:53:16 +0200 Subject: [PATCH] =?UTF-8?q?Nutzen=20von=20Epsilon=20Umgebung=20f=C3=BCr=20?= =?UTF-8?q?accuracy?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Sonderübungen/src/exercise5.java | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/Sonderübungen/src/exercise5.java b/Sonderübungen/src/exercise5.java index 5d9e4e1..7d1f1fa 100644 --- a/Sonderübungen/src/exercise5.java +++ b/Sonderübungen/src/exercise5.java @@ -2,7 +2,8 @@ import java.util.Scanner; public class exercise5 { public static void main(String[] args) { - double x,s,y,d; + double x,s,y,d,sAlt,epsilon; + epsilon = 0.0001; //Sei x die Zahl, deren Quadratwurzel bestimmt werden soll System.out.println("Geben Sie die Zahl ein aus der die Wurzel gezogen wird: "); Scanner in = new Scanner(System.in); @@ -10,13 +11,14 @@ public class exercise5 { in.close(); //Gebe eine Schätzung ab , was die Quadratwurzel von von x ist s = x/2; - for (int i = 0; i < 20; ++i) { - //Bilde den Quotienten zwischen x und der Schätzung. Wir nennen Sie y. - y = (x/s); - // Bilde den Durchschnitt Zwischen der Schätzung und y - d = (y+s)/2; - s = d; - } + do { + sAlt = s; + //Bilde den Quotienten zwischen x und der Schätzung. Wir nennen Sie y. + y = (x/s); + // Bilde den Durchschnitt Zwischen der Schätzung und y + d = (y+s)/2; + s = d; + } while (Math.abs(s-sAlt) >= epsilon); System.out.println("Die Wurzel von " + x + " ist: " + s); }