Hallo Herr Sperber ,
au weia, eine wirklich vollständige Implementation einer
Programmiersprache kennt auch Label und Goto. Sogar seit der Version 1
(sagt zumindest das Hilfesystem).
Also: Das Problem hier ist, dass y3=t gesetzt werden soll, t aber nicht
bekannt ist. Also sollte man vorher t einen Wert zuweisen. Und
dazwischen erneut, sonst läuft das ewig..... Das geht übrigens in Basic
genau so.
Also zum Zweiten: Man kann sich natürlich in die Analen von
Mathematica.ch eintragen, indem wie vor 30 Jahren programmiert wird und
Label und Goto nutzt. Ich weiß nicht, wo einem so etwas heute noch
beigebracht wird, ich hoffe nur, dass so etwas nicht an einer deutschen
Hochschule passiert (wahrscheinlich ist das dann keine Eliteuni). Da
nicht zu erkennen ist, was der Algorithmus erreichen soll, mach es wenig
Sinn diesen hier zu verbessern, denn irgendwann müsste ja t ein Wert
zugewiesen werden. Ich kann nicht erraten welcher, aber es geht
garantiert ohne Goto und Label viel besser.
Wahrscheinlich sollte der Algorithmus besser in ein Modul eingebaut
werden. Näheres hierzu ist im Hilfesystem von MMA zu finden.
Schöner Gruß
Peter Klamser
Christian M. Sperber wrote:
ich versuche in einer Label[beginn];.......;If[test,Goto[begin]]
Schleife. einen Wert gegen den in der naechsten Runde berechneten zu
vergleichen. Ich bekomme es aber nicht hin diesen zu definieren.
Mathematica akzeptiert das nicht. Damit es klarer wird habe ich ein
notebook angehaengt.
In der ersten Berechnung laeuft die Anzahl der Durchgaenge ueber eine
Variable q. In der zweiten Berechung habe ich es einfach so
aufgeschrieben wie ich es gerne haette funktioniert aber nicht.