![]() |
![]() |
![]() |
|
как наиболее эффективноее получить абсалютное значение числа | ☑ | ||
---|---|---|---|---|
0
Alkor
15.02.07
✎
18:40
|
как наиболее эффективноее получить абсалютное значение числа
Напиример у меня отрецательное значение реквизита как получить положительное |
|||
1
NS
15.02.07
✎
18:41
|
Оттас.
|
|||
2
France
15.02.07
✎
18:41
|
если меньше нуля умножить на -1..
|
|||
4
megalodon
15.02.07
✎
18:43
|
м-дя... ну дружиЩЩе, раз в вопросах оптимизации ты уже дошел до ТАКОГО - жму руку - маладца! :-)))
|
|||
5
Neco
15.02.07
✎
18:44
|
(4) Ты это кому?
|
|||
6
megalodon
15.02.07
✎
18:44
|
(4) автору само собой.
|
|||
7
Magic74
15.02.07
✎
18:48
|
(4)+1
(2) Хмммм помоему умножение тут будет не самым эффективным... лучше отнять от нуля его отнять от нуля - ща сравню |
|||
8
Долорес И
15.02.07
✎
18:49
|
макс(ч,-ч)
|
|||
9
Magic74
15.02.07
✎
18:51
|
(8) А как -ч получить??? Умножением??? или как???
|
|||
10
France
15.02.07
✎
18:52
|
?(ч>0,ч,ч*-1)
(9) зачотный вопрос)) |
|||
11
NS
15.02.07
✎
18:52
|
(9) Именно так как и написано - унарной операцией.
|
|||
12
MAGician_
15.02.07
✎
18:53
|
СобствЧисло = -1234;
Если Лев(Строка(СобствЧисло),1) = "-" Тогда СобствЧисло = Число(Сред(Строка(СобствЧисло),1)); КонецЕсли :-)))))))))))))))))))))) |
|||
13
NS
15.02.07
✎
18:53
|
?(ч>0,ч,-ч)
А так чем хуже? Умножать-то зачем? |
|||
14
France
15.02.07
✎
18:53
|
до 300 дойдем?
(11) и какая ж унарная операция в 1С есть для этого?.. |
|||
15
Magic74
15.02.07
✎
18:54
|
(12) Неааа я не думаю что строки в 1С лчень быстрые - скорее наоборот
|
|||
16
Persimmon
15.02.07
✎
18:54
|
А модуль числа??
|
|||
17
NS
15.02.07
✎
18:54
|
Унарная операция "-"
|
|||
18
Neco
15.02.07
✎
18:54
|
(12) Можно так
Число(СтрЗаменить(Строка(Число),"-",""); |
|||
19
France
15.02.07
✎
18:54
|
(16) женщина, не мешайся... полезным займись лучше))
|
|||
20
megalodon
15.02.07
✎
18:55
|
я еще один способ знаю: через какое то там тождество: квадратный корень из числа в квадрате :-))) но это точно не самый оптимальный способ.
|
|||
21
Magic74
15.02.07
✎
18:55
|
(20) Зато явно от математика)))
|
|||
22
Долорес И
15.02.07
✎
18:56
|
(20)а корень как извлекать?
|
|||
23
NS
15.02.07
✎
18:56
|
Я не понял - в новой версии восьмерки убрали Унарный минус?
В новотях про это ни слова не было. |
|||
24
Persimmon
15.02.07
✎
18:56
|
Аааа а если взять -tg
|
|||
25
Долорес И
15.02.07
✎
18:58
|
+(22)видимо, через ряд Тейлора.
|
|||
26
NS
15.02.07
✎
18:59
|
(25) Погрешность накапливается. Ньютоном нужно корень извлекать, с хорошим выбором начального приближения.
|
|||
27
MMF
15.02.07
✎
18:59
|
если преобладает количество отрицательных элементов, то эффективнее
?(ч>0, ч, -ч). Иначе - наоборот |
|||
28
Neco
15.02.07
✎
18:59
|
(23) Ничего не трогал, честно
|
|||
29
MAGician_
15.02.07
✎
19:00
|
Предлагаю для этого встроить код на асемблере!
|
|||
30
megalodon
15.02.07
✎
19:00
|
(22)
Pow (Pow) Встроенные функции языка Pow (Pow) Синтаксис: Pow(<Основание>, <Показатель>) Параметры: <Основание> (обязательный) Тип: Число. Основание операции возведения в степень. <Показатель> (обязательный) Тип: Число. Показатель степени. Возвращаемое значение: Тип: Число. Результат возведения в степень. Описание: Возводит число <X> в степень <Y>. Примечание: В случае арифметического переполнения или невозможности вычислить результат происходит ошибка "Неправильное значение аргумента встроенной функции (Pow)". Пример: // Вычисление объема шара по значению радиуса Pi=3.1415926535897932; Радиус=3; V=4*Pi*Pow(Радиус,3)/3; Сообщить("Объем шара с радиусом "+Радиус+" равен "+Формат(V,"ЧДЦ=2")); |
|||
31
Magic74
15.02.07
✎
19:01
|
не -ч, 0-ч
что-то 1С на 1000000 операции задумалась нездорово |
|||
32
NS
15.02.07
✎
19:02
|
Не понял, 0-ч быстрее чем -ч?
|
|||
33
MAGician_
15.02.07
✎
19:02
|
(30) Это не то!
Предлагаю вычислять степень через логорифмы! |
|||
34
France
15.02.07
✎
19:03
|
(31) тут уж с NS не поспориш.. придется обойтись знаком -...
|
|||
35
Долорес И
15.02.07
✎
19:05
|
(30)надо же, не знала, что это есть в восьмёрке
|
|||
36
France
15.02.07
✎
19:06
|
ветка то с 77 начиналась... нет?
|
|||
37
Magic74
15.02.07
✎
19:08
|
(32) -ч быстрее на 15% почти
|
|||
38
Долорес И
15.02.07
✎
19:08
|
+(35)заглянула в СП. там и sqrt имеется
|
|||
39
megalodon
15.02.07
✎
19:13
|
(38) ух ты. а я этого не знал :-)
|
|||
40
Neco
15.02.07
✎
19:16
|
А что такое СП?
|
|||
41
Magic74
15.02.07
✎
19:16
|
(39) Было бы странно если бы для извлечения корня пришлось писать свою функцию - как-то не сурьезно)))
|
|||
42
Neco
15.02.07
✎
19:24
|
(41) Ниче писали, руки не отваливались:
Книга знаний: Математические вычисления в 1С |
|||
43
Terv
15.02.07
✎
19:24
|
Модуль_Х = Макс(Х,-Х);
|
|||
44
АСанСаныч
15.02.07
✎
19:48
|
Чего-то все сегодня добрые? А то, на такие вопросы: "В поиск...", "Поиск рулит...".
v8: Функция числа "по модулю", Абсолютное значение |
|||
45
NS
15.02.07
✎
19:51
|
(44) Внимательно посмотри заголовок ветки и нулевой пост.
Человек заикается уже, а ты - в поиск :) |
|||
46
дущ
15.02.07
✎
19:53
|
sqrt(-(-x*x))
:) |
|||
47
megalodon
15.02.07
✎
19:54
|
(44) имхо тут всегда в обсуждении околотупого вопроса общественность доходит до самого дна истины.
|
|||
48
Magic74
15.02.07
✎
19:57
|
(47) Это что мы как-то на пиво спорили, кто за 4 часа напишет наиболее оптимальный архиватор известного файла(эффективность считалась ((размер проги)+(архив))/(сам файл))
Так эта тема 2 недели у нас была актуальна))) |
|||
49
megalodon
15.02.07
✎
20:00
|
(48) ну это разве тупняк? это круто. продвинутая у тебя там тусовка, хехе :-)
|
|||
50
Magic74
15.02.07
✎
20:01
|
(49) То как это писалось - ... чё это я - да мы тут такие :)
|
|||
51
Magic74
15.02.07
✎
20:12
|
(0) Слушай а ты случаем не с Магнитогорска-ли???
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |