Noch zu früh? If[]

rgruber shared this problem 14 years ago
Answered

Geg.:A,B,C

Vieleck[A,B,C]

E,F

Schieber d (0..2)

u=Vektor[A,E],

v=Vektor[A,F],

Ges.:Je nach Stellung des Schiebers wird das Dreieck verschoben

d<1:A->E

d>=1:A->F

Zuerst:

Q=If[d<1,Verschiebe[P,u],Verschiebe[P,v]]

wird geparst (sichtbar nach "umdefinieren"):

Q = If[d < 1, Vieleck[Verschiebe[A, u], Verschiebe[B, u], Verschiebe[C, u]], Vieleck[Verschiebe[A, v], Verschiebe[B, v], Verschiebe[C, v]]]

und das wird dann (Umdefinieren, Übernehmen) zu:

Q = If[d < 1, Vieleck[A, B, C], Vieleck[A, B, C]]

also nicht brauchbar.

Aber:

Wenn frau/man zuerst um u und v verschiebt:

Q=Verschiebe[P,u],

R=Verschiebe[P,v],

Entstehen die Punkte A', A1',…

Wenn jetzt die Vektoren u und v in Abhängigkeit von d verändert werden, dann ist alles in Ordnung.

Weiters ist mir aufgefallen:

Wenn u ein abhängiger Vektor ist, dann generiert die Zuweisung

v=u

einen unabhängigen Vektor (call by value).

lg Rudi

Comments (1)

photo
1

danke fuer die Hinweise! Wie gesagt: if gibt es offiziell noch gar nicht ;-)

Werde mir das anschauen.


lg, Markus

© 2021 International GeoGebra Institute