![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 09.10.2015
Сообщений: 6
|
![]()
Привет. Если кто нибудь может помочь с решение лёгкой задачи ответа на которую я к своему стыду не знаю прошу помочь.
Суть такая 3 if условия (chrcc = 1, 2, 0), в каждом условии еще одно под условие. Тела под условий одинаковые. Как оформить код таким образом, что бы "тело" if'оф употреблялось только один раз. Объяснения №2: Есть три условия в каждом из которых, есть разные под условия (в количестве 1 шт). Тела, внутри каждого под условия одинаковы (имеем 3 одинаковые конструкции, но они внутри под условий, т.е. : Первое условие со значением 1 -> Первое под условие -> тело Второе условие со значением 2 -> Второе под условие -> тело Треть условие со значением 0 -> Третье под условие -> тело). Код:
Код:
Последний раз редактировалось dock2005; 09.10.2015 в 12:33. Причина: Правка условия. |
![]() |
![]() |
![]() |
#2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Код:
I'm learning to live...
|
![]() |
![]() |
![]() |
#3 |
Регистрация: 09.10.2015
Сообщений: 6
|
![]()
Это оформление намного красивее моего.
Но тело "VesIzol:=a else VesIzol:=b;" всё еще используется 3 раза. В приведённом примере тело это 1 строчка, в реальном 15 строчек (упрощено было для наглядности). Именно количество строчек --> кода (тело) хотелось бы уменьшить с 3 до 1. Как ума не приложу. Вам за ответ спасибо. |
![]() |
![]() |
![]() |
#4 |
Лис
Старожил
Регистрация: 18.09.2015
Сообщений: 2,409
|
![]()
Оформите функцией делов-то.
Код:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал . |
![]() |
![]() |
![]() |
#5 |
Просветитель
Участник клуба
Регистрация: 26.12.2012
Сообщений: 1,844
|
![]() Код:
В разработке: воспроизводственный контур ИТ
|
![]() |
![]() |
![]() |
#6 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
Если данные тебе приходят из БД, то такие вещи стоит решать вычисляемыми полями на уровне запроса. А вообще я не вижу тут быдлокода. Да - много букаф, но если это работает и масштабируется то париться не стоит.
I'm learning to live...
|
|
![]() |
![]() |
![]() |
#7 | |
Регистрация: 09.10.2015
Сообщений: 6
|
![]() Цитата:
Да работает, просто очень много кода. А делфи7 не умеет делать Code-folding (скрывать часть кода). И конструкции получаются очень внушительные. Ну думаю придётся делать так. А вам еще раз спасибо. |
|
![]() |
![]() |
![]() |
#8 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
I'm learning to live...
|
|
![]() |
![]() |
![]() |
#9 | |
Регистрация: 09.10.2015
Сообщений: 6
|
![]() Цитата:
Код:
Код:
|
|
![]() |
![]() |
![]() |
#10 | |
Регистрация: 09.10.2015
Сообщений: 6
|
![]() Цитата:
((checc = 1) and (sel_NakladCuVIDPF_NO.Value in [1, 16])) or ((checc = 2) and (sel_NakladCuVIDPF_NO.Value in [5, 7, 11])) or например если sel_NakladCuVIDPF_NO.Value = 5 это не помешает при checc = 1 пройти в тело расчёта. А это уже нарушает условия выборки. |
|
![]() |
![]() |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Удаление строк с одинаковыми значениями | artsanox | Microsoft Office Excel | 3 | 09.12.2013 04:45 |
Приведение типов с одинаковыми свойствами | praeeo | Общие вопросы Delphi | 3 | 21.12.2010 14:14 |
несколько ComboBox-ов с одинаковыми данными.... | brans | Microsoft Office Excel | 2 | 07.11.2010 14:06 |
max расстояние между плоскими телами! | Flanker13 | Общие вопросы Delphi | 3 | 17.03.2009 13:46 |
Выборка данных, попадающих под определенные условия | tambovsky | Microsoft Office Excel | 2 | 13.08.2008 14:48 |