|
|
|
Модуль числа | ☑ | ||
|---|---|---|---|---|
|
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) прикольней
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |