Имя: Пароль:
LIFE
 
OFF: Преобразование числа
🠗 (Волшебник 18.06.2019 14:44)
0 SkAt
 
18.06.19
13:52
Всем привет! Игра: самый извращенный способ преобразования числа из отрицательного в его положительный эквивалент в 1С! Простейший пример:

...
Число = -253;
ПоложительноеЧисло = -Число;
...
1 Lama12
 
18.06.19
13:56
Число(СтрЗаменить(Формат(Число, "ЧГ"),"-",""))
2 RomanYS
 
18.06.19
13:58
(1) ..ля..
3 SkAt
 
18.06.19
13:59
(1) Даже группировка предусмотрена - не уронишь!
4 AlexTim03
 
18.06.19
13:59
Число(Сред(Число, 2))
5 Lama12
 
18.06.19
14:00
SQRT(Число*Число)
6 1Сергей
 
18.06.19
14:01
//Если целое

Рез = 0;

Если Число>0 Тогда
    Для Идн=1 по Число Цикл
        Рез=Рез-1;
    КонецЦикла;
Иначе
    Для Идн=Число по -1 Цикл
        Рез=Рез+1;
    КонецЦикла;
КонецЕсли;
7 Garykom
 
гуру
18.06.19
14:04
Думаю ничего извращенней цикла уже не придумать
8 1Сергей
 
18.06.19
14:05
Число = -253;
ПоложительноеЧисло = Число-2*Число;
9 1Сергей
 
18.06.19
14:05
(7) рекурсия ещё
10 Garykom
 
гуру
18.06.19
14:07
Только если запросами или через СКД ну или банально ВК
11 НЕА123
 
18.06.19
14:10
12 Кодер
 
18.06.19
14:17
(7) // Считаем число 8-битным целым со знаком
Если Параметр = -32768 Тогда Возврат 32768;
ИначеЕсли Параметр = -32767 Тогда  Возврат 32767;
... продолжишь сам

ИначеЕсли Параметр = 0 Тогда  Возврат 0;
Иначе Возврат Параметр;
КонецЕсли;
13 Lama12
 
18.06.19
14:21
Не пробовал, но наверняка можно декларировать в XML положительное число, туда его выгрузить и прочитать обратно.
Ну еще элементам списка значений задать тип положительное число, и тоже самое как с XML.
14 НЕА123
 
18.06.19
14:23
для целых
(('0001-01-01'- ЧислоН)-'0001-01-01')  + (('0001-01-01'+ ЧислоН)-'0001-01-01')
15 Гипервизор
 
18.06.19
14:31
Число1 = -253;

Эксель = Новый COMОбъект("Excel.Application");
Эксель.Visible = 0;
Книга = Эксель.WorkBooks.Add();
Лист = Книга.WorkSheets.Add();
Ячейка = Лист.Cells(1, 1);
Ячейка.Formula = "=ABS(" + Формат(Число1, "ЧГ=0") + ")";

Число2 = Ячейка.Value;

Книга.Close();                                              
Эксель.Quit();
Эксель = Неопределено;
16 Fish
 
18.06.19
14:35
Число = -253;
ПоложительноеЧисло = Макс(Число, -Число);
17 1Сергей
 
18.06.19
14:39
(16) вы не поняли задачу
18 1Садовник
 
18.06.19
14:48
Запрос = Новый Запрос("ВЫБРАТЬ -&Число КАК Число");
Запрос.УстановитьПараметр("Число", Число);
    
Выборка = Запрос.Выполнить().Выбрать();
Число = ?(Выборка.Следующий(), Выборка.Число, Число);
19 НЕА123
 
18.06.19
14:50
из серии Попытка...Исключение

для целых

Попытка
м= новый массив(ЧислоН);
ПоложительноеЧисло= ЧислоН;
Исключение
ПоложительноеЧисло= -ЧислоН;
конецПопытки;
20 Valkyrie
 
18.06.19
14:53
Число = -253;
    
    табЗнач = Новый ТаблицаЗначений;
    табЗнач.Колонки.Добавить("НашеЧисло", Новый ОписаниеТипов("Число"));
    новСтр = табЗнач.Добавить();    
    новСтр.нашеЧисло = Число;
    
    Запрос = Новый Запрос;
    Запрос.Текст =
        "ВЫБРАТЬ
        |    НашаТабличка.НашеЧисло КАК НашеЧисло
        |ПОМЕСТИТЬ ВТ_ИзначальноеЧисло
        |ИЗ
        |    &НашаТабличка КАК НашаТабличка
        |;
        |
        |////////////////////////////////////////////////////////////////////////////////
        |ВЫБРАТЬ
        |    ПРЕДСТАВЛЕНИЕ(ВТ_ИзначальноеЧисло.НашеЧисло) КАК ЧислоСтрокой
        |ИЗ
        |    ВТ_ИзначальноеЧисло КАК ВТ_ИзначальноеЧисло";
    
    Запрос.УстановитьПараметр("НашаТабличка", табЗнач);
    
    Результат = Запрос.Выполнить();
    
    Выборка = Результат.Выбрать();
    
    Выборка.Следующий();    
    
    ЧислоСтрокой = Выборка.ЧислоСтрокой;
    
    ДлинаСтроки = СтрДлина(ЧислоСтрокой);
    
        
    Запрос.Текст =
        "ВЫБРАТЬ
        |    ПОДСТРОКА(&ЧислоСтрокой, 2, &ДлинаСтроки) КАК СтрокаЧисла";
    
    Запрос.УстановитьПараметр("ДлинаСтроки", ДлинаСтроки);
    Запрос.УстановитьПараметр("ЧислоСтрокой", ЧислоСтрокой);
    
    Результат = Запрос.Выполнить();
    
    Выборка = Результат.Выбрать();
    
    Выборка.Следующий();
    
    КонечноеЧисло = Число(Выборка.СтрокаЧисла);
    
    Сообщить(КонечноеЧисло);
21 Джонсон
 
18.06.19
17:30
(0) Нужно сформировать соответсвие отрицательных и положительных чисел, и по нему легко можно будет вычислить нужное число