Вопрос № 175720: Уважаемые эксперты подскажите в следующем На форме имеются много флажков, требуется проверить три флажка, № 1, 2, 3 Вариантов того, что какой -то из них, какие -то из них или никакой не установлен всего восемь 1. Установлен 1 2. Устан...
Вопрос № 175720:
Уважаемые эксперты подскажите в следующем На форме имеются много флажков, требуется проверить три флажка, № 1, 2, 3 Вариантов того, что какой -то из них, какие -то из них или никакой не установлен всего восемь 1. Установлен 1 2. Установлен 2 3. Установлен 3 4. Установлен 1 и 2 5. Установлен 1 и 3 6. Установлен 2 и 3 7. Установлен 1 и 2 и 3 8. Не установлен ни один Какова будет конструкция Ельзе Иф, чтобы поставить условия во всех восьми вариантах. Как будет меняться этот
код если флажков будет больше. Спасибо Эндрю
Отвечает DrakoN, Практикант :
Здравствуйте, Ципихович Эндрю. Cамый естетичный вариант который я придумал.=)
что то вроде следующего
string res = Cstr(Cint(flagA)) + Cstr(Cint(flagB))... cколько влезет ...
итого мы получим строку типа 001, 010, 111 итд... что есть число в двоичном коде все что нам остаеться это написать простенький селект на все комбинации( сколько бы их ни было),
Select case (res) res = "001" .....
вот и вся задачка. Использование ифов ухудшит
читаемость кода.
При желании можно поиграться конвертнуть строчку res в десятиричное число и использовать его вместо строки. Хотя я считаю что в рамках задачи это избыточно.
----- От Винта!
Ответ отправил: DrakoN, Практикант
Ответ отправлен: 29.12.2009, 17:52
Оценка ответа: 4
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 258245
на номер 1151 (Россия) |
Еще номера »
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Оценить выпуск »
Нам очень важно Ваше мнение об этом выпуске рассылки!
* Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи.
(полный список тарифов)
** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
*** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.