Hallo Leute,
wir haben in der Schule zurzeit Java (in Informatik) und als Hausaufgabe hatte ich ein Programm zu schreiben, was nach dem Heron Verfahren rechnet.
Das Problem ist, das nach der ersten Rechnung alle Werte nur 0.0 sind (Hab in mein Programm eingebaut, das es nach jedem mal Schleife durchlaufen die Werte anzeigt). Ich hab jetzt schon einige Zeit lang den fehler gesucht, aber nichts gefunden. Vielleicht kann mir hier jemand helfen.
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
public class wurzel {
public static void main(String[] args) {
double flaeche = 5.0; //ausgangswert
double schranke = 0.02;
double genauigkeit = 10000;
double x[] = new double[100];
double y[] = new double[100];
int n = 0;
x[n] = 1.0;
System.out.println(String.format("Das x[n] betraegt %s", x[n]));
y[n] = flaeche / x[n];
n++;
while (genauigkeit > schranke)
{
System.out.println(String.format("Das x[n] betraegt %s", x[n]));
System.out.println(String.format("Das y[n] betraegt %s", y[n]));
System.out.println(String.format("Das genauigkeit betraegt %s", genauigkeit));
x[n] = (x[n-1] + y[n-1]) / 2;
y[n] = flaeche / x[n];
genauigkeit = Math.abs(x[n] - y[n]);
n++;
}
System.out.println(String.format("Das n betraegt %s", n));
System.out.println(String.format("Das Ergebnis betraegt %s", x[n]));
}
}
|