Вход | Регистрация
 

Условный оператор Если

Условный оператор Если
Я
   Pepeega
 
10.03.21 - 13:16
Добрый день коллеги, возникла проблема, в связи с тем, что я не особо хорошо еще разбираюсь в "оптимизации" конструкции если, есть 2 переменные(булево) и 2 колонки тз, обзовём их "Булево1" "Булево2" "Приём1" "Приём2"(приём, колонки в ТЗ) написал условие

Если Булево1 и Булево2 И приём1 = 0 и приём2 = 0 Тогда
колонкаТЗ = 3
ИначеЕсли булево1 и приём1 = 0 Тогда
колонкаТЗ = 5
ИначеЕсли булево2 и приём2 = 0 Тогда
колонкаТЗ = 5
КонецЕсли;


Но сейчас сказали, что такое условие можно написать проще и  понятнее, не совсем понимаю, как его можно написать еще проще, подскажите, если кто-то понимает
   ДенисЧ
 
1 - 10.03.21 - 13:17
А спросить у тех, кто сказали?
   Pepeega
 
2 - 10.03.21 - 13:19
(1) к сожалению не подсказывают, я уже полчаса пробую, меняю условие, но все равно не то, что нужно выходит .-.
   dka80
 
3 - 10.03.21 - 13:19
Если Булево1 и Булево2 И Не приём1 и Не приём2
   Kassern
 
4 - 10.03.21 - 13:20
(2) объедини последние условия, по ним у тебя результат колонки одинаковый
   dka80
 
5 - 10.03.21 - 13:20
Если Булево1 и Булево2 И Не(приём1 и приём2)
   dka80
 
6 - 10.03.21 - 13:22
ИначеЕсли булево1 и приём1 = 0 Тогда
колонкаТЗ = 5
ИначеЕсли булево2 и приём2 = 0 Тогда
колонкаТЗ = 5
КонецЕсли; 


ИначеЕсли (булево1 Или булево2) и Не(приём1 Или приём2 ) Тогда
колонкаТЗ = 5
КонецЕсли;
   Злопчинский
 
7 - 10.03.21 - 13:22
Кривые данные. нет условий на прием1 и прием2 если они не ноль. отсюда - значение Прием1 и прием2 - несущественно.
остается операции с Б1 и Б2
   Pepeega
 
8 - 10.03.21 - 13:22
(5) там же числа в колонке ТЗ хранятся, почему "И НЕ(приём1 и приём2)?
   dka80
 
9 - 10.03.21 - 13:23
(8) потому что при сравнении 0 эквивалентно Ложь, а все остальное истина
   Pepeega
 
10 - 10.03.21 - 13:24
(4) Пытался, но проще что-то не ставится
(6) Спасибо за пример, но конструкция ИначеЕсли которую вы написали, она же сложнее читается(мне, не знаю как остальным) или я тут не прав?
   H A D G E H O G s
 
11 - 10.03.21 - 13:29
Правильно Пипега, а не Пепига.
   Pepeega
 
12 - 10.03.21 - 13:30
(11) это специфичность Пепега
   Йохохо
 
13 - 10.03.21 - 13:33
если  (а1 и б1) и (а2 и б2) тогда гоуту3
иначеесли1 и б1) или2 и б2) тогда гоуту5
   Малыш Джон
 
14 - 10.03.21 - 13:36
а вы говорите зачем математика программисту нужна...
   Pepeega
 
15 - 10.03.21 - 13:43
(13) Спасибо за пример
(14) тут вы правы

Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.