/* Numerik-I/06S, Aufgabe 09, bearbeitet von ........... */ import java.awt.*; import java.awt.Graphics; import java.awt.event.*; class Fenster extends Frame implements WindowListener { //Fenster für Graphikausgabe Fenster() {//Konstruktor super("Bildausgabe"); setSize(510,510); addWindowListener(this); } public void windowClosing(WindowEvent e) {//Fenster schließen System.exit(0); } public void windowOpened(WindowEvent e) { } public void windowClosed(WindowEvent e) { } public void windowActivated(WindowEvent e) { } public void windowDeactivated(WindowEvent e) { } public void windowIconified(WindowEvent e) { } public void windowDeiconified(WindowEvent e) { } double[] x,ad; // = Speicher Polynom-Koeffizienten // Auswertung Polynom an Stelle x: static double horner(int n, double z, double[] x, double[] a){//Hornerschema /* eigene Anweisungen */ } public void paint(Graphics g) { // Zeichnet Graphen int s0,z0,s1,z1; double t; g.setColor(Color.black); g.drawLine(10,250,490,250); //x-Achse s1 = 10; z1 = (int) Math.round(250-200*horner(28,-1.0,x,ad)); g.setColor(Color.red); for (int i=1; i<=480; i++) { s0 = s1; z0 = z1; t = i/240.0-1; //x-Wert Polynomgraph s1 = 10+i; //x-Pos. im Graph z1 = (int) Math.round(250-200*horner(28,t,x,ad)); g.drawLine(s0,z0,s1,z1); } } } class Aufg09 { static void divdif(int n, double[] x, double[] a){ //Differenzenschema in a /* eigene Anweisungen */ } public static void main(String args[]) { Fenster f = new Fenster(); // neues Graphik-Fenster f // Datenwerte: int n = 28; f.x = new double[n+1]; // für Stützstellen f.ad = new double[n+1]; // für Datenwerte /* x, und y -Daten in f.x, f.ad speichern */ divdif(n,f.x,f.ad); f.setVisible(true); //ruft f.paint auf //f.repaint(); } }