2012-07-06 3 views
-1

В математике можно написать циклы, используя For или While в ячейке, подобной другим языкам программирования. Для того чтобы запустить блок ячеек итеративно, лучшим способом, который я мог бы придумать, является написать цикл в отдельном ноутбуке mathematica и вызвать NotebookOpen; SelectionEvaluate. Есть ли способ запустить блок ячеек итеративно, не создавая дополнительный файл для ноутбука?Mathematica Looping через блок ячеек

Благодаря

+0

Вы все еще можете запустить SelectionEvaluate, даже не создавая отдельный ноутбук. – Verbeia

+0

Есть ли что-нибудь вроде «GOTO label», если это так, я могу, конечно, использовать SelectionEvaluate в записной книжке –

+0

@LebronJames, да ведь Mathematica имеет статус GOTO. Я бы использовал это и прыгнул на этикетки. Убедитесь, что вы добавили ярлык в верхней части каждой ячейки, чтобы перейти, предпочтительно в одну и ту же ячейку, чтобы избежать путаницы. Одним из преимуществ Mathematica является гибкий вычислительный движок, который позволяет и поощряет использование многих различных методов программирования (в отличие от других систем). Я рекомендую вам больше изучить GOTO и поэкспериментировать с различными аспектами программирования Mathematica, включая LOOPS и DO, если вы более знакомы с ними. –

ответ

1

Может быть, вы ищете Module?

doTheLoop[] := 
    Module[{a, i}, 
    a = {}; 
    For[i=1, i < 1000, i++, If[PrimeQ[i], AppendTo[a, i]]]; 
    a 
    ] 

вызов подпрограммы с doTheLoop[]

Вообще однако loops are not the way to goс Mathematica.