私には3つの操作があります。各操作はループ内にありflag
、操作の実行中に減少する値があります。flag
操作の実行中、値が最大しきい値に達した他の操作は、その操作を中断して代わりに実行する必要があります(優先度が最も高くなります)。値はflag
時間に対する微分方程式に従って変化します。
- 別の操作が実行されているときに各操作の値を増やし、値が最大しきい値に達した
flag
ときにそれに切り替えるようにシステムに通知します。flag
- 各操作の
flag
値は、操作の実行中に時間とともに変化する特定の微分方程式に従って増減します。
現在、すべての操作は1つのファイルにあり、Switch case
ステートメントでループされています。現在のコードは次のとおりです。
while 1
[value, index]=max(flag);
switch index
case 1
operation1
...
...
flag = [x y z]
case 2
operation2
...
...
flag = [x y z]
case 3
operation3
...
...
flag = [x y z]
end
end
何か案は ?もう少し詳しく説明する必要がある場合は、教えてください。