| 
| 
 | Вопрос # 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
 
 |  
 Мини-форум вопросаМини-форум пуст. Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |