Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 12:57

Формат числа

Автор Cody, 06 янв 2011, 13:27

0 Пользователей и 1 гость просматривают эту тему.

Cody

Здравствуйте, подскажите как убрать знаки после запятой "не округлять". Например 1999,99 нужно чтоб было 1999,9. Заранее благодарен.

progmikon

Ох... на память я не скажу, но по-моему, и формат и окр вернут округленный результат.
Можно попробовать, поработать со строкой, например так:

НужноеЧисло = 1999.99;
НужноеЧисло = СтрЗаменить(НужноеЧисло, Символы.НПП, "");
СимволДробнойЧасти = Найти(НужноеЧисло, ",");
Если СимволДробнойЧасти <> Неопределено Тогда
НужноеЧисло = Число(Сред(НужноеЧисло, 1, СимволДробнойЧасти + 1));
КонецЕсли;
Сообщить(НужноеЧисло);


Хотя, как мне кажется нужно поковырять эти функции. Не думаю, что такая простая задача решается таким количеством кода.

Cody

Спасибо большое, попробую.

progmikon

Цитата: sergejK74 от 06 янв 2011, 15:20
Если Формат и Окр не подходят, то тогда
Цел(1999.99*10)/10
Кстати, хорошая идея. +1.

DenPlus

Еще как вариант:
   а = 1999.99;
   б = Число(Сред(а, 1, СтрДлина(а)-1));
   Сообщить(б);

Вернет число. Аналогично работает и со строкой.

DenPlus

Так я чтоб понятнее было чтоли  :)

Вот так тогда:
   а = 1999.99;
   а = Число(Сред(а, 1, СтрДлина(а)-1));
   Сообщить(а);

progmikon

Цитата: sergejK74 от 06 янв 2011, 17:32
Цитата: DenPlus от 06 янв 2011, 17:17
Еще как вариант:
   а = 1999.99;
   б = Число(Сред(а, 1, СтрДлина(а)-1));
   Сообщить(б);

Вернет число. Аналогично работает и со строкой.

Для а = 1999.999 выдаст 1999.99 - а требовалось 1999.9

Я что-то тоже не понял, где тут противоречие?

DenPlus

В дошло до меня. Ясно.

progmikon

Цитата: DenPlus от 06 янв 2011, 17:44
В дошло до меня. Ясно.
Я понял идею sergejK74.
Ну здесь можно и согласится и нет. Это частный случай, кроме того, автор не уточнял, до какого порядка нужно "урезать запись".

DenPlus

   а = 1999.999793733572938572837;
   а = Число(Сред(а, 1, Найти(а,",")+1));
   Сообщить(а);


:) :)

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск