Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.06.2014, 11:58   #1
dreary999
Пользователь
 
Регистрация: 19.05.2014
Сообщений: 18
По умолчанию Оптимизация кода погрешностей

Код:
 if

  (1.5 > ((strtofloat(itog[10,i]))-(StrToFloat(itog[10,i]) - StrToFloat(itog[9,i]) + StrToFloat(itog[15,i]))))
  and
  (-1.5 < ((strtofloat(itog[10,i]))-(StrToFloat(itog[10,i]) - StrToFloat(itog[9,i]) + StrToFloat(itog[15,i]))))
    then
Можно как то сделать в одну строчку?
А то у меня что-то не выходит (((
Главное уметь превращать баги в фичи
dreary999 вне форума Ответить с цитированием
Старый 16.06.2014, 12:00   #2
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,430
По умолчанию

Вычисления справа загони в перменные.
Человек_Борща вне форума Ответить с цитированием
Старый 16.06.2014, 12:11   #3
dreary999
Пользователь
 
Регистрация: 19.05.2014
Сообщений: 18
По умолчанию

Я наверное не совсем точно описал то, что замышляю)
Я хотел избавиться от and.
Меня интересует, возможно ли как нибудь оформить типа
Код:
if 
1.5 > вычисления > -1.5
then
Главное уметь превращать баги в фичи

Последний раз редактировалось dreary999; 16.06.2014 в 12:27.
dreary999 вне форума Ответить с цитированием
Старый 16.06.2014, 12:22   #4
XE5
Заблокирован
 
Регистрация: 02.03.2014
Сообщений: 439
По умолчанию

Нет, не возможно.
XE5 вне форума Ответить с цитированием
Старый 16.06.2014, 12:32   #5
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,430
По умолчанию

Цитата:
Меня интересует, возможно ли как нибудь оформить типа
Читай пост №2.
Код:
if (A < 1.5) and (B < 100) and (C < 100) then
если значений для сравнения результата вычеслений очень много, то напиши функцию которая исп. массив проверочных значений в цикле проверит условие A < B и если условие ложно то функция вернет False, итого вместо вагона if:
Код:
if (A < 1.5) and (B < 100) and (C < 100) then
будет
Код:
if CheckA(A) then
Человек_Борща вне форума Ответить с цитированием
Старый 16.06.2014, 12:40   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
strtofloat(itog[10,i])
А может стоит сделать массив itog вещественным а не строковым?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.06.2014, 12:49   #7
StriderX
Форумчанин
 
Регистрация: 21.04.2014
Сообщений: 115
По умолчанию

Цитата:
Сообщение от dreary999 Посмотреть сообщение
Я наверное не совсем точно описал то, что замышляю)
Я хотел избавиться от and.
Меня интересует, возможно ли как нибудь оформить типа
Код:
if 
1.5 > вычисления > -1.5
then
По модулю же, не?
Код:
 if (Abs(вычисления) < 1.5) then
StriderX вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Оптимизация кода (C++) Кирилл Романов Помощь студентам 0 30.10.2013 23:36
Оптимизация кода LatuSerge Общие вопросы Delphi 10 27.12.2011 01:51
Оптимизация кода Shouldercannon Общие вопросы Delphi 23 22.07.2010 22:45
Оптимизация кода. Alex Cones Общие вопросы Delphi 19 12.10.2009 20:51
Оптимизация кода [Smarik] Gamedev - cоздание игр: Unity, OpenGL, DirectX 9 20.08.2008 15:00