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