| FunktionPlotV2.java |
1 /**
2 * 183.592 Programmierpraxis TU Wien WS2014/15 H.Moritsch
3 * Plot einer Funktion y = f(x) mittels '*'-Zeichen
4 * im Intervall von a bis b mit Schrittweite dx
5 * (mit lokalen Variablen)
6 */
7 public class FunktionPlotV2 {
8 public static void main(String[] args) {
9
10 double a = -2.0;
11 double b = 3.0;
12 double dx = 0.25;
13
14 double x;
15
16 x = a;
17 // *solange* x innerhalb des Intervalls liegt:
18 while (x <= b) {
19
20 /*****/
21 double y = f(x); // lokale Variable (while)
22 /*****/
23
24 /*****/
25 double pos = 0.0; // lokale Variable (while)
26 /*****/
27
28 // *solange* pos "links" des Funktionswertes liegt:
29 while ( pos < y ) {
30
31 System.out.print(' ');
32
33 pos = pos + dx/2.0; // nächster Positionsschritt
34 }
35
36 System.out.println('*'); // entspricht dem Funktionswert
37
38 x = x + dx; // nächster x-Wert
39 }
40
41 }
42
43 /**
44 * Berechnung der Funktion -0.01*x^5 + 0.08*x^4 - 0.26*x^3 - 0.31*x^2 + 1.4*x + 2.36
45 */
46 static double f(double x) {
47 return -0.01*x*x*x*x*x + 0.08*x*x*x*x - 0.26*x*x*x - 0.31*x*x + 1.4*x + 2.36;
48 }
49
50 }
51