| |
|
|
p.specht
| qui aus qui une école encore qui Schrecken qui Polynome dans Erinnerung hat, sollte sich dans Gedanken beim englischen Schulleiter et opticien William George Horner aus Bristol (UK um 1815) pour une starke schematische simplification bedanken. Gänzlich verliert qui l'affaire ses Schrecken, si on aussi encore qui Erfindungen qui Herren W. Schickard, B. Pascal, Ch. Babbage et (parallèle en supplément) W. Leibnitz, quelle dans Zahnrad-betriebenen sog. "Rechenmaschinen" aus Holz et Messing gipfelten, son propre nennt: là wird qui rasche numerische Polynomauswerung zum Kinderspiel. on folge lediglich très oui c'est ca den nachstehenden Anweisungen
Windowtitle " HORNER-SCHEMA "
' Orig.-source: E.Floegel: Pascal-Handbuch S. 76
' Pour Profan transkribiert, faute abgefangen et adaptiert 2012 P. Specht
' (D) seulement pour Demonstrationszwecke - sans jedwede Gewähr!
style de fenêtre 1048 : font 2 : randomize
window %maxx\4,0-%maxx\2,%maxy-41
set("decimals",15):declare x!,y!,z!,i&,n&,a![],a$
grad:
Cls rnd(8^8)
imprimer
imprimer " Numerische Polynomauswertung mittels Horner-Schema"
imprimer
imprimer " Grad des Polynoms: ";n&
locate %csrlin-1,21
input a$
cas a$>»:n&=val(a$)
setsize a![],n&+1
neukoeff:
imprimer
imprimer " s'il te plaît Koeffizienten eingeben: "
imprimer
whileloop n&,0,-1
imprimer " Koeff. de x^";str$(&Boucle);
imprimer " = a[';str$(& Loop);'] ";
cas &Boucle<10:imprimer " ";
imprimer "= ";
cas a![&Boucle]>0:imprimer tab(28);a![&Boucle];
imprimer
locate %csrlin-1,28
input a$
cas a$>»:a![&Boucle]=val(a$)
endwhile
xwert:
imprimer
imprimer " Auswertung à qui Stelle x = ";
cas x!>0:imprimer x!;
imprimer
locate %csrlin-1,31
input a$
cas a$>»:x!=val(a$)
y!=0
whileloop n&,0,-1
y!=y!*x!+a![&Boucle]
endwhile
imprimer "------------------------------------------------------------------------"
imprimer " Polynomwert à Stelle ";x!;" ist : ";
si abs(y!)>10^6
imprimer format$("%e",y!)
d'autre
imprimer y!
endif
y!=0
imprimer "------------------------------------------------------------------------"
imprimer " Pour d'autre x berechnen? ";
input a$
a$=lower$(a$)
cas ord(a$)=ord("j"):goto "xwert"
cas val(a$)<>0:beep
cas val(a$)<>0:goto "xwert"
imprimer " Pour autre Koeffizienten chez Grad ";n&;" berechnen? ";
input a$
a$=lower$(a$)
si ord(a$)=ord("j")
cls rnd(8^8)
goto "neukoeff"
endif
imprimer " Anderes Polynom berechnen? ";
input a$
a$=lower$(a$)
cas ord(a$)=ord("j"):goto "grad"
imprimer
beep
imprimer " Wiedersehen! "
waitinput 5000
|
|
|
| Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'... | 07.05.2021 ▲ |
|
|
|