Переключение на Главную Страницу Страницы: 1 [2]  ОтправитьПечать
Горячая тема (более 10 ответов) Есть ли перевод чисел в 1С++? (число прочтений - 11212 )
Quan
1c++ donor
1c++ power user
Отсутствует


I'm old, bald and ugly.

Сообщений: 273
Местоположение: Новосибирск -- Москва
Зарегистрирован: 20. Мая 2006
Пол: Мужской
Re: Есть ли перевод чисел в 1С++?
Ответ #15 - 24. Мая 2006 :: 17:17
Печать  
kms писал(а) 24. Мая 2006 :: 17:07:
Смотри. В 1С числа хранятся как CNumeric, про них все известно.
В Math целочисленные операции идут над типом long (32 бит, знаковый), операции с пл. точкой - над типом double.
Ну и соотв. конвертации и ограничения разрядности.

Ну, я в общем-то так и понял из исходников. Просто после многолетних перерывов С++ с трудом воспринимается, вот и решил уточнить.

ЗЫЖ а вообще нужно бы это явно задокументировать. В частности, для операций циклического сдвига это вообще принципиально, т.к. напрямую влияет на результат. Ну, и в ряде других случаев тоже достаточно важно.
  

А для тех, кто не хотел учить SQL, господь сотворил курсоры
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Есть ли перевод чисел в 1С++?
Ответ #16 - 24. Мая 2006 :: 18:08
Печать  
Да ладно. Ты теперь это знаешь, а больше никто про циклический сдвиг не спрашивает Улыбка
ОК, я тебя понял.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
Quan
1c++ donor
1c++ power user
Отсутствует


I'm old, bald and ugly.

Сообщений: 273
Местоположение: Новосибирск -- Москва
Зарегистрирован: 20. Мая 2006
Пол: Мужской
Re: Есть ли перевод чисел в 1С++?
Ответ #17 - 25. Мая 2006 :: 07:30
Печать  
artbear писал(а) 24. Мая 2006 :: 16:42:
Ах да, у нас дока на Math по ошибке в релиз не попала Печаль

kms писал(а) 24. Мая 2006 :: 16:47:
Да, и в проект почему-то не попала. Сейчас поправим. Спасибо, люди. Улыбка

Может, по тупости врожденной чегойто я не то скачиваю.... или не там, но обновленной доки так и не нашел  Печаль

kms писал(а) 24. Мая 2006 :: 16:42:
 Math.zip    

Это, конечно, гуд. Только в раздел Math можно попасть исключительно поиском по ключевому слову "Math", ввиду отсутствия линки в главном дереве
  

А для тех, кто не хотел учить SQL, господь сотворил курсоры
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Есть ли перевод чисел в 1С++?
Ответ #18 - 25. Мая 2006 :: 07:34
Печать  
Не, все правильно говоришь.

В проект я добавил (CVS) - он теперь собирается и в будущем все будет ОК. Может и отдельный фикс будет.
Math находится в разделе "Дополнительные класс и ЭУ" - мы так живем.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
yudin
Full Member
***
Отсутствует


Краткость - с.т.

Сообщений: 131
Местоположение: Ростов - на - Дону
Зарегистрирован: 25. Мая 2006
Пол: Мужской
Re: Есть ли перевод чисел в 1С++?
Ответ #19 - 25. Мая 2006 :: 11:18
Печать  
Korpas писал(а) 24. Мая 2006 :: 15:36:
Интересует, есть ли функции по переводу десятичного числа в двоичное и обратно? Заранее спасибо.


Функция Из_10_В_Любую(Знач Значение=0,Нотация=36) Экспорт
     Если Нотация<=0 Тогда Возврат("") КонецЕсли;
     Значение=Число(Значение);
     Если Значение<=0 Тогда Возврат("0") КонецЕсли;
     Значение=Цел(Значение);
     Результат="";
     Пока Значение>0 Цикл
         льтат;
         Значение=Цел(Значение/Нотация) ;
     КонецЦикла;
     Возврат Результат;
КонецФункции
//_________________________________________________________

Функция Из_Любой_В_10(Знач Значение="0",Нотация=36) Экспорт
     Если Нотация<=0 Тогда Возврат(0) КонецЕсли;
     Значение=СокрЛП(Значение);
     Если Значение="0" Тогда Возврат(0) КонецЕсли;
     Результат=0;
     Длина=СтрДлина(Значение);
     Для Х=1 По Длина Цикл
         М=1;
         Для У=1 По Длина-Х Цикл М=М*Нотация КонецЦикла;
         Х,1))-1)*М;
     КонецЦикла;
     Возврат Окр(Результат);
КонецФункции


Процедура Сформировать()
     
     
     К=Из_10_В_Любую(255,9);
     Сообщить(к);
     Сообщить(Из_Любой_В_10(К,9));
     
КонецПроцедуры
  

С уваженьем, дата, подпись
Наверх
wwwICQ  
IP записан
 
Переключение на Главную Страницу Страницы: 1 [2] 
ОтправитьПечать