![]() |
![]() |
![]() |
|
Модуль числа | ☑ | ||
---|---|---|---|---|
0
SemT
11.05.07
✎
16:47
|
При расчете разницы двух велечин, может получиться отрицательное число.
Как пролучить модуль результата, то есть число без знака "минус". |
|||
1
Фокусник
11.05.07
✎
16:48
|
?(число<0,-число,число) (:
|
|||
2
almar
11.05.07
✎
16:48
|
?(Ч<0,-Ч,Ч)
|
|||
3
almar
11.05.07
✎
16:49
|
(1) ну ты фокусник :)
|
|||
4
mun2
11.05.07
✎
16:49
|
Макс(-ч,ч)
|
|||
5
SemT
11.05.07
✎
16:51
|
Большое спасибо
|
|||
6
Ненавижу 1С
гуру
11.05.07
✎
16:51
|
Число(СтрЗаменить(Строка(Ч),"-",""))
|
|||
7
AcaGost
11.05.07
✎
17:00
|
(6) Извращенец :-)
|
|||
8
1Сергей
11.05.07
✎
17:16
|
(6)+
?(Лев(""+чис,1)="-",Число(Сред(""+Чис,2)),Число(Сред(""+Чис,1)) |
|||
9
Программист 484
11.05.07
✎
17:18
|
СЗ=СоздатьОбъект("списоксзначений")
СЗ.ДобавитьЗначение(ч) СЗ.ДобавитьЗначение(-ч) СЗ.Выбрать(Выберите пожалуйста положительное число") |
|||
10
КонецЦикла
11.05.07
✎
17:25
|
Функция Модуль(ТекЧисло)
ТЗ = СоздатьОбъект("ТаблицаЗначений"); ТЗ.НоваяКолонка("Значение", "Число"); ТЗ.НоваяСтрока(); ТЗ.Значение = ТекЧисло; ТЗ.НоваяСтрока(); ТЗ.Значение = -ТекЧисло; ТЗ.Сортировать("Значение"); Возврат ТЗ.ПолучитьЗначение(2, "Значение"); КонецФункции |
|||
11
1Сельчанин
11.05.07
✎
17:32
|
?(Ч<0,Ч-2*Ч,Ч)
|
|||
12
McNamara
11.05.07
✎
17:35
|
Addon = СоздатьОбъект("Addon1C.Commands");
модуль_чис=Addon.Sqrt_(чис*чис); |
|||
13
1Сергей
11.05.07
✎
17:52
|
Логарифмы так никто и не задействовал?
|
|||
14
Программист 484
11.05.07
✎
17:58
|
(13)
Попытка х= е^(ч*10000) Исключение //Бесконечость значит ч положительное Возврат ч; КонецПопытки Возврат -ч;//ч отрицательное |
|||
15
Волшебник
модератор
11.05.07
✎
17:58
|
есть еще решение через WSH
|
|||
16
Андрюха
11.05.07
✎
18:05
|
Имхо, самое изящное решение в (4).
|
|||
17
mun2
11.05.07
✎
18:08
|
Можно и с логарифмами
Попытка ф=лог10(ч); возврат ч; исключение возврат -ч; Конецпопытки |
|||
18
КонецЦикла
11.05.07
✎
18:20
|
(16) Это понятно
Теперь задача - найти самое нелепое :) |
|||
19
sapphire
11.05.07
✎
18:23
|
//Просто стебусь, но такое тоже прокатит
Число(СтрЗаменить(""+ч,"-","")); |
|||
20
McNamara
11.05.07
✎
18:25
|
(18)самое нелепое (17), потому что не пашет. лог10(-15)=0. Исключения не возникает
|
|||
21
FreeFin
11.05.07
✎
18:27
|
ч=(ч*ч)/2;
|
|||
22
McNamara
11.05.07
✎
18:28
|
(21) ты гониииишь)))) возводишь в квадрат и делишь пополам? см .12
|
|||
23
FreeFin
11.05.07
✎
18:29
|
(22) гоню))))
|
|||
24
1 апреля
11.05.07
✎
18:42
|
+(23) пятница
|
|||
25
Андрюха
11.05.07
✎
18:43
|
Похоже, в (21) - самое нелепое!
|
|||
26
France
11.05.07
✎
18:45
|
NS-а на вас нет..
он бы вам сказал, "а кто отменил унарную операцию" и показал бы: "-Ч" |
|||
27
Андрюха
11.05.07
✎
18:47
|
(26) Если число отрицательное, то прокатит, а если положительное?
|
|||
28
France
11.05.07
✎
18:50
|
(27) а вам жалко))..
|
|||
29
mun2
11.05.07
✎
18:55
|
бум извращаться
Функция модуль(ч) ТЗ=создатьОбъект("ТаблицаЗначений"); ТЗ.новаяКолонка(); ТЗ.НоваяСтрока(); ТЗ.УстановитьЗначение(1,1,-ч); ТЗ.НоваяСтрока(); ТЗ.УстановитьЗначение(2,1,ч); ТЗ.Сортировать("1-"); возврат ТЗ.ПолучитьЗначение(1,1); КонецФункции |
|||
30
sapphire
11.05.07
✎
18:57
|
(28) Что вы, нам совсем никого не жалко :)
|
|||
31
Gosha Sevastopolski
11.05.07
✎
19:37
|
Да, ветка порадовала под конец рабочей недели! Вариант с ТЗ - рулез!
|
|||
32
kosts
16.05.08
✎
09:02
|
ч = 2 * ч * (ч > 0) - ч
|
|||
33
zak555
16.05.08
✎
11:31
|
-мин(ч;-ч)
|
|||
34
Anton9843
16.05.08
✎
11:38
|
ч * (1 - Найти(ч, "-") * 2)
|
|||
35
Sh1ko
16.05.08
✎
11:43
|
Варианта с циклом не было:
Для н = 1 по -Ч*2 Цикл Ч = Ч +1; КонецЦикла |
|||
36
Ёпрст
гуру
16.05.08
✎
11:45
|
(35) Этот нерабочий
|
|||
37
Sh1ko
16.05.08
✎
11:46
|
(36) да ну
|
|||
38
Маркетолог
16.05.08
✎
11:47
|
(36) Он только для целых чисел, а так вроде рабочий
|
|||
39
Sh1ko
16.05.08
✎
11:47
|
угу :)
|
|||
40
Ненавижу 1С
гуру
16.05.08
✎
11:48
|
Функция Модуль(Ч)
Если Ч>0 Тогда Возврат Модуль(Ч-1)+1; ИначеЕсли Ч<0 Тогда Возврат Модуль(Ч+1)-1; Иначе Возврат 0; КонецЕсли; КонецФункции; |
|||
41
Ненавижу 1С
гуру
16.05.08
✎
11:49
|
(+40) только для целых
|
|||
42
FreeFin
16.05.08
✎
11:50
|
по мотивам Математических вычислений (которые у меня разок вызвали перезагрузку неслабого сервера)
ЧислДляМодуля=-100; Apгумeнт=ЧислДляМодуля*ЧислДляМодуля; Если Apгумeнт<0 Тогда Сообщить("...","!"); ИначеЕсли Apгумeнт=0 Тогда Возврат 0; КонецЕсли; ПpeдыдущaяИтepaция = Apгумeнт/2; ДocтaтoчнaяToчнocть=0.0001; КoличecтвoЗнaкoв=4; КoличecтвoИтepaций=330; Для Cч=1 По КoличecтвoИтepaций Цикл Значeниe = 0.5*(ПpeдыдущaяИтepaция+ Apгумeнт/ПpeдыдущaяИтepaция); Если Значeниe<ПpeдыдущaяИтepaция Тогда Paзницa = ПpeдыдущaяИтepaция-Значeниe; Иначе Paзницa = Значeниe-ПpeдыдущaяИтepaция; КонецЕсли; Если Paзницa<ДocтaтoчнaяToчнocть Тогда Прервать; КонецЕсли; ПpeдыдущaяИтepaция=Значeниe; КонецЦикла; Значeниe = Окр(Значeниe,Макс(КoличecтвoЗнaкoв-Лог10(Значeниe),0)); Сообщить(""+Значeниe); |
|||
43
Ёпрст
гуру
16.05.08
✎
11:54
|
Ч = -2*Ч*(СтрЧислоВхождений(Ч,"-"))+Ч;
|
|||
44
fly7
16.05.08
✎
12:06
|
[q]При расчете разницы двух велечин, может получиться отрицательное число.
Как пролучить модуль результата, то есть число без знака "минус".[/q] все забыли что нужно еще и "разность" запрограммировать :) |
|||
45
MaxS
16.05.08
✎
12:06
|
Запрос = Новый Запрос;
Запрос.Текст = " |ВЫБРАТЬ | &МоеЧисло КАК МоеЧисло | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | -&МоеЧисло | |УПОРЯДОЧИТЬ ПО | МоеЧисло УБЫВ"; Запрос.УстановитьПараметр("МоеЧисло", МоеЧисло ); Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); Если Выборка.Следующий() Тогда Сообщить(Выборка.МоеЧисло); Иначе Сообщить("не удалось вычислить модуль"); КонецЕсли; |
|||
46
Fragster
гуру
16.05.08
✎
12:07
|
Ч = Число(Прав(Строка(Ч),СтрДлина(Строка(Ч))-СтрЧислоВхождений(Строка(Ч),"-")));
|
|||
47
Anton9843
16.05.08
✎
12:14
|
-(Число(ч) + 2*число("-" + ч))
|
|||
48
Fragster
гуру
16.05.08
✎
12:20
|
(47) не будет работать
|
|||
49
Ёпрст
гуру
16.05.08
✎
12:21
|
(48) ошибаешься
|
|||
50
Fragster
гуру
16.05.08
✎
12:22
|
-(-2+2*(--2)) = -(4-2) = -2
|
|||
51
nop
16.05.08
✎
12:23
|
жгучаю тема
|
|||
52
nop
16.05.08
✎
12:23
|
а как получить факториал числа запросом?
|
|||
53
Ёпрст
гуру
16.05.08
✎
12:24
|
(50) Ты в Табло лучше напиши .. всё там работает
|
|||
54
Anton9843
16.05.08
✎
12:24
|
(50) число("--10") = 0
проверь 1Ской :) |
|||
55
Fragster
гуру
16.05.08
✎
12:25
|
а вообще в 47 предполагается, что ч - это строка, хотя это число
|
|||
56
Anton9843
16.05.08
✎
12:30
|
(55) ничего подобного
ч вполене может быть и числом |
|||
57
Стокс
16.05.08
✎
12:31
|
Формат(Ч,"ЧП")
|
|||
58
Fragster
гуру
16.05.08
✎
12:31
|
(54) тогда зачет :)
|
|||
59
Ёпрст
гуру
16.05.08
✎
12:32
|
(57) Супер!
|
|||
60
Anton9843
16.05.08
✎
12:54
|
А ещё вот так (Ч - это число)
Число(Прав(Ч, СтрДлина(-Ч))) |
|||
61
DenLaDen
16.05.08
✎
12:59
|
ничего себе, спустя год подняли ветку!
|
|||
62
Chum
16.05.08
✎
13:22
|
(9) шедеврально!
|
|||
63
DenLaDen
16.05.08
✎
13:47
|
(62) не, в (21) прикольней
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |