Как я могу структурировать программу (процесс) с очень большим количеством операторов IF

мне нужно создать программу для своего рода сложного процесса. Что ж, процесс несложный, но есть много переменных, которые контролируют процесс. Я не могу подробно рассказать о процессе, поэтому я придумал один, который имеет ту же загрузку, что и IF:

процесс следующий: останавливать печь для плавки железа или нет. У нас есть такие параметры: если температура поднимается выше 800 градусов по Цельсию, остановите это Кроме того, когда мы ожидаем, что холодная вода поступит из печи 2 в следующие 20 минут, мы можем продолжить

За исключением случаев, когда температура поднимается на 10 градусов в следующие 10 минут, мы не можем ждать еще 10 минут, пока не остынет холод. воды, поэтому мы должны остановиться.

За исключением случаев, когда температура по какой-то причине снижается до 790-800 градусов на 5 минут, мы добавляем дополнительные 5 минут ко времени, когда нам нужна дополнительная холодная вода.

Кроме , когда по какой-то причине температура снижается до 780-790 градусов на 5 минут, мы добавляем дополнительные 5 минут ко времени, когда нам нужна дополнительная холодная вода.

и т. д. и т. д.

Вы можете вспомнить еще 20, кроме / if / then

в нашем процессе у нас> 50 ситуаций, и все для одной цели: остановится машина или нет.

Я должен сказать, что обычно не делаю этого. У меня нет такого количества ситуаций для одной цели / вопроса (а именно: остановить машину или нет), и это также ограничено по времени: если это происходит в течение 10 минут, то ...., и мы должны вычислять ситуацию каждую минуту снова.

Есть ли способ грамотно это запрограммировать?

(и также модульный тест, потому что у нас есть множество комбинаций, которые, я полагаю, представляют собой отдельные модульные тесты?)

13
задан Michel 22 September 2010 в 09:01
поделиться