Code: Select all
Procedure.d Factorial(N.b)
E.d=1
For S=2 To N
E*S
Next
ProcedureReturn E
EndProcedure
N = 120
MessageRequester("Factorial of "+Str(N),StrD(Factorial(N),0))
Code: Select all
Procedure.d Factorial(N.l)
E.d=1
For S=2 To N
E*S
Next
ProcedureReturn E
EndProcedure
Global NewList BernsteinElemente()
Procedure Bernstein(Width,Height,FrontColor,BackColor)
ResetList(BernsteinElemente())
NextElement(BernsteinElemente())
N = BernsteinElemente()
ImageID = CreateImage(#PB_Any,Width,Height)
StartDrawing(ImageOutput(ImageID))
Box(0,0,Width,Height,BackColor)
For NV = 1 To ListSize(BernsteinElemente())-1
NextElement(BernsteinElemente())
V = BernsteinElemente()
Old = Height
For X = 1 To Width
New = Height-Height*(Factorial(N)/(Factorial(V)*Factorial(N-V)))*Pow((X/Width),V)*Pow(1-(X/Width),N-V)
LineXY(X-1,Old,X,New,FrontColor)
Old = New
Next
Next
StopDrawing()
ProcedureReturn ImageID
EndProcedure
N = 30
AddElement(BernsteinElemente()) : BernsteinElemente() = N
For W = 0 To N
AddElement(BernsteinElemente()) : BernsteinElemente() = W
Next
SetClipboardImage(Bernstein(500,500,RGB(0,120,220),RGB(20,20,20)))