Gleichgewichtsproblem

Die virtuellen Experimente von http://phet.colorado.edu führen zu interessanten Fragestellungen. Z.B. http://phet.colorado.edu/en/simulation/balancing-act

gleichgewicht

Positionen:[-2,-1,0.5,1.5];
Massen:[5,10,15,20];

Kann man diese Massen auf den gegebenen Positionen so vertauschen, dass das Gleichgewicht gewahrt bleibt?

Es gibt eine Möglichkeit!

Programmcode:

Position:[-2,-1,0.5,1.5];
Masse:[5,10,15,20];
Reihenfolge:permutations(Masse);
Reihenfolge:listify(Reihenfolge);
n:length(Reihenfolge);
Gleichgewicht:makelist(Reihenfolge[i].Position,i,1,n);
Nummer:makelist(if Gleichgewicht[i]=0.0 
then Reihenfolge[i] else "",i,1,n);

Zweite Lösung:
lsg2

Gibt es weitere Gleichgewichtspositionen für die vier Ziegelpakete?

1820 Positionen gibt es (unter wxMaxima ablaufen lassen)! Die einseitigen Quadrupel können allerdings kein Gleichgewicht ergeben. Überlegtes Probieren führt zu weiteren Lösungen und hoffentlich zu einem vernünftigen Algorithmus. Reines Durchprobieren erfordert vermutlich viel Rechenzeit.

Balken:makelist(i,i,-2,2,0.25);
Balken:delete(0.0,Balken);
Positionen:powerset(setify(Balken),4);
Positionen:listify(Positionen);
length(Positionen);

Über Johnny Weilharter

Direktor i. R. der Bundeshandelsakademie und Bundeshandelssschule in Tamsweg, Österreich
Dieser Beitrag wurde unter Creative Commons, GLEICHUNGEN ODER GLEICHUNGSSYSTEME, Kombinatorik, Listenverarbeitung, Physik, STOCHASTIK, Vektoren veröffentlicht. Setze ein Lesezeichen auf den Permalink.