/***************************************************************/ /* Verfasser: Prof. Dr. Gregor Büchel */ /* Source : PolyHorner1.java */ /* Zweck : Polynome mit Horner Schema berechnen */ /* Stand : 15.11.2013 */ /***************************************************************/ class PolyHorner1 { public static void main(String args[]) {double a[], ug, og, d; int i,n; System.out.println("Welchen Grad hat das Polynom?"); n=einnat(); System.out.println("Aufruf einpoly()"); a=einPoly(n); System.out.println("Das Polynom:"); //ausPoly(a); System.out.println("Polynomverlauf:"); System.out.println("Eingabe: Untergrenze:"); ug=IO1.eindouble(); System.out.println("Eingabe: Obergrenze:"); og=IO1.eindouble(); System.out.println("Eingabe: Abtaststrecke:"); d=IO1.eindouble(); polyVerlauf(a,ug,og,d); } static int einnat() {int m; do {System.out.println("Eingabe einer ganzen Zahl m > 0:"); m=IO1.einint(); if (m<=0) System.out.println("Fehler: Ihre Zahl ist: "+m+" <=0 !"); } while (m<1); return m; } static double[] einPoly(int n) {double u[]; int i; /* Ein Polynom vom Grad n hat (n+1) Koeffizienten */ u=new double[n+1]; for (i=n; i>=0; i--) { System.out.println("Eingabe Koeffizient a["+i+"]:"); u[i]=IO1.eindouble(); } return u; } static double yhorn(double a[], double x) {double y; int i,n; n=a.length-1; /* n = Polynomgrad */ y=a[n]; for (i=n; i>=1; i--) y=y*x+a[i-1]; return y; } static void polyVerlauf(double a[], double ug, double og, double d) {double y,x; x=ug; if (d<0) d=-d; if (d==0) og=ug; do {y=yhorn(a,x); System.out.println("p("+x+")="+y); x=x+d; } while(x