| |
|
|
HofK | Lo se una Punkt con x zwischen 0 y Pi/2 y y zwischen 0 y 1 - hier (0.5, 0.75) - angegeben. Daraus voluntad zwei Geradenabschnitte determinado. Nun se por entsprechende Zuordnung de diesem Teilstück el periodische Función gebastelt.
XProfan 11
// Periodische Función erzeugen
Var px! = 0.5
Var py! = 0.75
//-------------
Ventana 0,0 - 1800,1000
Var x! = 0
Var y! = 0
Var m! = 0
Var pi2! = Pi() / 2
USEP 0, 2, RGB(200,0,0)
x! = -1.57
MoveTo 400 + x! * 200 , 500 + 200
WhileLoop 0, 784
x! = x! + 0.01
y! = sinlike(x!)
LineTo 400 + x! * 200 , 500 - y! * 200
EndWhile
USEP 0, 2, RGB(0,200,0)
x! = -1.57
MoveTo 400 + x! * 200 , 500
WhileLoop 0, 784
x! = x! + 0.01
y! = coslike(x!)
LineTo 400 + x! * 200 , 500 - y! * 200
EndWhile
USEP 0, 1, RGB(0,0,0)
x! = -1.57
MoveTo 400 + x! * 200 , 500 + 200
WhileLoop 0, 784
x! = x! + 0.01
y! = sin(x!)
LineTo 400 + x! * 200 , 500 - y! * 200
EndWhile
USEP 0, 1, RGB(0,200,200)
x! = -1.57
MoveTo 400 + x! * 200 , 500
WhileLoop 0, 784
x! = x! + 0.01
y! = cos(x!)
LineTo 400 + x! * 200 , 500 - y! * 200
EndWhile
USEP 0, 1, RGB(0,0,200)
Line 100, 500, 1700, 500
Line 400, 50, 400, 900
waitinput
Proc k1
Parámetros x!
m! = ( 1 - py! ) / ( pi2! - px! )
if x! <= px!
volver py! / px! * x!;
endif
if x! > px!
volver m! * x! + 1 - pi2! * m!
endif
ENDPROC
Proc sinlike
Parámetros x!
if ( x! < 0 )
volver -k1( -x! )
endif
if ( x! >= 0 ) AND ( x! <= pi2!)
volver k1( x! );
endif
if ( x! > pi2! ) AND ( x! <= Pi() )
volver k1( Pi() - x! );
endif
if ( x! > Pi() ) AND ( x! <= 3 * pi2! )
volver -k1( x! - Pi() );
endif
if ( x! > 3 * pi2! ) AND ( x! <= 2 * Pi() )
volver -k1( 2 * Pi() - x! );
endif
if ( x! > 2 * Pi() ) AND ( x! <= 5 * pi2!)
volver k1( x! - 2 * Pi() );
endif
ENDPROC
Proc coslike
Parámetros x!
volver sinlike( x! + pi2! );
ENDPROC
Anwendung siehe [...] |
|
|
| |
|
|