|
Вопрос # 3 125/ вопрос открыт / |
|
Здравствуйте!
Есть таблица
-----------------------------------------------------------
Показатель А Показатель Б … Показатель Я
Норма >100 >105 … …
Меньше нормы >80, <=100 >85, <=105 … …
… … … … …
Крайне резкое снижение <40 <35 … …
-----------------------------------------------------------
Пример закачал сюда, так как прикреплённый к вопросу не закачался сразу
http://slil.ru/27929720
50 Кб
В таблице у каждого параметра есть 10 интервальных вариантов, и соответственно в зависимости от того, в какой интервал попадает его текущее значение, то и выбирается соответствующая этому интервалу оценка.
Если ЖЕЛ=100, то "норма"
Если ЖЕЛ=0, то "Крайне резкое снижение"
Ничего пока не приходит в голову лучше, чем
10 строк if ... then ... на каждый параметр.
Ну а если их было бы 100, тогда ...
Наверняка есть какое-то красивое решение. Подскажите, пожалуйста, а то уже не "варит" голова к концу рабочего дня.
 |
Вопрос задал: Фамилия Имя Отчество (статус: Посетитель)
Вопрос отправлен: 26 августа 2009, 17:27
Состояние вопроса: открыт, ответов: 1.
|
Ответ #1. Отвечает эксперт: min@y™
Есть в паскале такой оператор, называется "case". В нём можно указывать не только простые константы, но и интервалы.
case Index of
0: Result:= 1;
1..15: Result:= 2;
16..25: Result:= 3;
26...75: Result:= 4;
else Result:= 5;
end; //case
 |
Ответ отправил: min@y™ (статус: Доктор наук)
Время отправки: 26 августа 2009, 17:52
|
Мини-форум вопроса
Мини-форум пуст.
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|