| |
|
|
p.specht
| qui Formel pour den n.ten Term einer Folge avec dem multiplikativ-additiv erzeugenden Bildungsgesetz x[n+1] = a*x[n] + b lautet:
Anmerkung: Könnte encore beschleunigt volonté à cause de qui bekannten Zinseszins- Formel SUM(i=0..N: x^i ) = ( x^(N+1) - 1 ) / ( x - 1)
avec cela peux on z.B. qui Nettoverzinsung chez periodisch anfallenden Fixkosten berechnen. qui Wert a wäre ensuite qui Zinssatz (si es encore Zinsen gäbe ) et b (comme negativer Wert!!) qui periodischen Kontoführungskosten.
Titre de la fenêtre "N.tes Folgeglied einer multiplikativ-additiven"+\
" Folge berechnen - Version 2.0":Fenêtre Style 24
declare x!,x1!,a!,sgn!,b!,sum!,i&,k&,n&
lup:
CLS rgb(200,200,200):font 2
imprimer "\n Bildungsgesetz x[n+1] = a * x[n] + b"
imprimer "\n facteur a (eh bien aussi négative erlaubt) = ";:input a!:sgn!=(a!>0)-(a!<0)
imprimer "\n Summand b = ";:input b!
imprimer "\n 1. Glied qui Folge x[1] = ";:input x1!
imprimer "\n"
imprimer " jusque welchem Folgeglied-index berechnen? N = ";
input n&:n&=abs(n&):casenot n&:n&=17
imprimer
x!=x1!
imprimer " index Iterativ: per Formel: "
imprimer " --------------------------------------------------------"
whileloop n&:k&=&Boucle
imprimer " x[";k&;"]=",tab(15);format$("%g",x!),tab(40);
sum!=0
si sgn!<>0
whileloop 0,K&-2
sum!=sum!+si(sgn!>0,1,si(&Boucle mod 2,-1,1))*abs(a!)^&loop
endwhile
imprimer format$("%g",x1!*si(sgn!>0,1,si(&Boucle mod 2,1,-1))*abs(a!)^(k&-1)+b!*sum!),
d'autre
imprimer format$("%g",b!),
endif
imprimer
x!=x!*a!+b!
endwhile
waitinput
goto "lup"
|
|
|
| Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'... | 30.05.2021 ▲ |
|
|
|
|
p.specht
| ici mon Versuch, qui obige Staffelrechnung umzukehren et aus Anfangsbetrag, Anzahl Perioden et Endbetrag sur den facteur (Verzinsung) et cela additive Glied (Prämie/Periodenspesen) trop schließen. attention, weitgehend ungeprüft et rein experimentell!
Titre de la fenêtre "Rückschluss de verzinseszinsten Beträgen et Kontospesen sur den Nominalzinssatz"
'(X) Experimentalwär 2019-05 by p.specht/vienne - sans chacun Gewähr!!!
Fenêtre Style 24:set("decimals",17):font 2
declare à!,a!,x1!,n&,xn!,b!,bn!
declare i&,j&,eps!,sahi!,siahi!,W$
eps!=val("1e-12")
x1!=1000
n&=20
xn!=4000
b!=-20
a!= 7 /100+1
lup:
CLS rgb(190+rnd(66),190+rnd(66),190+rnd(66))
imprimer "\n Nominalzins [1] ou bien Spesen [2] ou bien beides [3, experimentell] berechnen?: ";
input w$
cas w$="2":goto "lup2"
cas w$="3":goto "lup3"
CLS rgb(190+rnd(66),190+rnd(66),190+rnd(66))
imprimer "\n A N G A B E N : "
imprimer "\n Anfangsbetrag: ";:input w$:cas w$>»:x1!=val(w$)
imprimer "\n Anzahl Perioden: ";:input w$:cas w$>»:n&=val(w$)
imprimer "\n Endbetrag: ";:input w$:cas w$>»:xn!=val(w$)
imprimer "\n Prämien minus Spesen je période: ";:input w$:cas w$>»:b!=val(w$)
imprimer
locate 1,1
imprimer "\n A N G A B E N : "
imprimer "\n Anfangsbetrag: ";format$("%g",x1!)
imprimer "\n Anzahl Perioden: ";n&
imprimer "\n Endbetrag: ";format$("%g",xn!)
imprimer "\n Prämien minus Spesen je période: ";format$("%g",b!)
imprimer
imprimer "\n E R G E B N I S: \n"
imprimer " Zinsfaktor: Spesendurchschnitt: \n\n"
Whileloop 1000
sahi!=SUM_ahi(n&-2,a!)
à!=a!-(x1!*a!^(n&-1)+b!*sahi! - xn!)/(x1!*(n&-1)*a!^(n&-2)+b!*SUM_iahi(n&-3,a!))
' bn!=b!-(x1!*a!^(n&-1)+b!*sahi! - xn!)/sahi!
locate %csrlin-1,2:imprimer a!,b!
cas (abs(à!-a!)<eps!) :pause'and (abs(bn!-b!)<eps!)
a!=à!
' b!=bn!
cas &Boucle=1000:imprimer "\n ERGEBNIS INSTABIL!"
endwhile
beep
imprimer "\n Nominalzinssatz: ";format$("###0.#### %",(a!-1)*100)
imprimer "___"
waitinput
goto "lup"
proc SUM_ahi :parameters bis&,a!
declare s!,i&
whileloop 0,bis&
s!=s!+a!^&Boucle
endwhile
return s!
endproc
proc SUM_iahi :parameters bis&,a!
declare s!,i&
whileloop 0,bis&
s!=s!+&Boucle*a!^&Boucle
endwhile
return s!
endproc
lup2:
Titre de la fenêtre "Rückschluss de verzinseszinsten Beträgen et Nominalzinsfaktor sur Periodenspesen"
CLS rgb(190+rnd(66),190+rnd(66),190+rnd(66))
imprimer "\n A N G A B E N : "
imprimer "\n Anfangsbetrag: ";:input w$:cas w$>»:x1!=val(w$)
imprimer "\n Anzahl Perioden: ";:input w$:cas w$>»:n&=val(w$)
imprimer "\n Endbetrag: ";:input w$:cas w$>»:xn!=val(w$)
imprimer "\n Nominalzinsfaktor:";:input w$:cas w$>»:a!=val(w$)
imprimer
locate 1,1
imprimer "\n A N G A B E N : "
imprimer "\n Anfangsbetrag: ";format$("%g",x1!)
imprimer "\n Anzahl Perioden: ";n&
imprimer "\n Endbetrag: ";format$("%g",xn!)
imprimer "\n Nominalzinsfaktor:";format$("%g",a!)
imprimer
imprimer "\n E R G E B N I S: \n"
imprimer " Zinsfaktor: Spesendurchschnitt: \n\n"
Whileloop 1000
sahi!=SUM_ahi(n&-2,a!)
' à!=a!-(x1!*a!^(n&-1)+b!*sahi! - xn!)/(x1!*(n&-1)*a!^(n&-2)+b!*SUM_iahi(n&-3,a!))
bn!=b!-(x1!*a!^(n&-1)+b!*sahi! - xn!)/sahi!
locate %csrlin-1,2:imprimer a!,b!
cas (abs(bn!-b!)<eps!) :pause'and (abs(à!-a!)<eps!)
' a!=an!
b!=bn!
cas &Boucle=1000:imprimer "\n ERGEBNIS INSTABIL!"
endwhile
beep
imprimer "\n Nominalzinssatz: ";format$("###0.#### %",(a!-1)*100)
imprimer "\n Fixbetrag ";si(b!>0,"Prämien(+)","Spesen");" je période: ";format$("#####0.#####",b!)
imprimer "___"
waitinput
goto "lup"
lup3:
Titre de la fenêtre "Rückschluss de verzinseszinsten Beträgen sur Nominalzinsfaktor et Periodenspesen"
CLS rgb(190+rnd(66),190+rnd(66),190+rnd(66))
imprimer "\n A N G A B E N : "
imprimer "\n Anfangsbetrag: ";:input w$:cas w$>»:x1!=val(w$)
imprimer "\n Anzahl Perioden: ";:input w$:cas w$>»:n&=val(w$)
imprimer "\n Endbetrag: ";:input w$:cas w$>»:xn!=val(w$)
locate 1,1
imprimer "\n A N G A B E N : "
imprimer "\n Anfangsbetrag: ";format$("%g",x1!)
imprimer "\n Anzahl Perioden: ";n&
imprimer "\n Endbetrag: ";format$("%g",xn!)
imprimer
imprimer "\n E R G E B N I S: \n"
imprimer " Zinsfaktor: Spesendurchschnitt: \n\n"
Whileloop 1000
sahi!=SUM_ahi(n&-2,a!)
bn!=b!-(x1!*a!^(n&-1)+b!*sahi! - xn!)/sahi!
à!=a!-(x1!*a!^(n&-1)+b!*sahi! - xn!)/(x1!*(n&-1)*a!^(n&-2)+b!*SUM_iahi(n&-3,a!))
locate %csrlin-1,2:imprimer a!,b!
cas (abs(bn!-b!)<eps!) and (abs(à!-a!)<eps!):pause
a!=à!
b!=bn!
cas &Boucle=1000:imprimer "\n E R G E B N I S I N S T A B I L !"
endwhile
beep
imprimer "\n Nominalzinssatz: ";format$("###0.#### %",(a!-1)*100)
imprimer "\n Fixbetrag ";si(b!>0,"Prämien(+)","Spesen");" je période: ";format$("#####0.####",b!)
imprimer "___"
waitinput
goto "lup"
|
|
|
| XProfan 11Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'... | 30.05.2021 ▲ |
|
|
|
|
p.specht
| Verzinseszinsungsdauer sous Speseneinfluss ================================== Ergänzend ici une vereinfachte Berechnung, comment on aus den (im nachstehenden Snippet testweise fest einprogramierten) Werten Anfangsbetrag, Verzinsungsfaktor, Periodenspesen et einem Endbetrag sur le nombre qui Verzinsungsperioden rückschliessen peux. Bien sûr wieder la fois sans Gewähr!
Titre de la fenêtre "Aus Anfangsbetrag, Verzinsung, Spesen et Endbetrag sur qui période schließen"
cls
declare a!,b!,x1!,xn!,n!
a!=2'Zinsfaktor (zB: 1.04 = 4%)
b!=-1'Spesen
x1!=2'Anfangsbetrag
xn!=9'Endbetrag
n!=(ln(((a!-1)*(xn!-1))/((a!-1)*x1!+b!))+ln(a!))/ln(a!)
imprimer " cet données treten am Ende qui ";format$("%g",n!);". période sur!"
waitinput
Fin
|
|
|
| XProfan 11Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'... | 30.05.2021 ▲ |
|
|
|