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

помогите плизз

Автор shams, 10 мая 2023, 08:31

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

shams

1. Представить дробное число в виде суммы строкой.
Есть произвольное дробное число СуммаЗаказа. Нужно получить строковое представление суммы в формате «X руб. Y коп.».
Например, для числа 127.45 представление будет таким: «127 руб. 45 коп.».
Напишите программный код, который решает эту задачу.

я писал код почему то 127  выходить буками например так выходить результат кода "СТО ДВАДЦАТЬ СЕМЬ РУБЛЕЙ КОППЕК "
помогите плизз


 Процедура Функции_числами()
      
     ДробноеЧисло = 127.45;
   ЦелаяЧасть = Цел(ДробноеЧисло);
   ПараметрыПредметаИсчисления = "рубль, рубля, рублей, м, копейка, копейки, копеек, ж, 2";
   ДробноеЧислоПрописью = ЧислоПрописью(ДробноеЧисло,,ПараметрыПредметаИсчисления);
   Сообщить(ДробноеЧислоПрописью)
   КонецПроцедуры
        Функции_числами();

Kvark5d

shams,
Цитата: shams от 10 мая 2023, 08:31я писал код почему то 127  выходить буками
потому что надо пользоваться синтакс-помошником и читать описание применяемых функций
ЧислоПрописью:
Возвращаемое значение:
Тип: Строка.
Представление числа прописью.

Kvark5d

shams, а еще полезно гуглом пользоваться, там куча готовых решение типа
//коп - Выводится всегда
Функция глРубКоп(ПарСумма) Экспорт
Если Число(ПарСумма)=0 Тогда
Возврат "руб.      коп."
КонецЕсли;
Возврат ""+Цел(ПарСумма)+" руб. "+Формат((ПарСумма-Цел(ПарСумма))* 100,"ЧЦ=2; ЧВН=")+" коп."
КонецФункции

//Если копеек нет, то они и не выводятся
Функция РубКоп(ПарСумма) Экспорт
        Если Число(ПарСумма)=0 Тогда
               Возврат " "
        КонецЕсли;
        коп = (ПарСумма-Цел(ПарСумма))* 100;   
        Возврат ""+Цел(ПарСумма)+" руб. "+?(коп>0, Формат(коп,"ЧЦ=2; ЧВН=")+" коп.","")
КонецФункции

shams

Kvark5d, а мне надо просто условии сделть ?

shams

Kvark5d, Здраствуйте почему в этом коде когда вывод сделаю ошибка дает ?

Функция РубКоп(ПарСумма)
        Если Число(ПарСумма)=0 Тогда
               Возврат " "
        КонецЕсли;
        коп = (ПарСумма-Цел(ПарСумма))* 100;   
        Возврат ""+Цел(ПарСумма)+ "." +?(коп>0, Формат(коп,"ЧЦ=2; ЧВН=")+"","")
КонецФункции

Число = РубКоп("25 руб. 20 коп.");
Сообщить(Число);



надо вывести 25 руб. 20 коп. а в результате должно получиться 25.20

Kvark5d

shams, програмирование явно не для Вас.
Задача стояла такая:
Цитата: shams от 10 мая 2023, 08:31Представить дробное число в виде суммы строкой.
Есть произвольное дробное число СуммаЗаказа. Нужно получить строковое представление суммы в формате «X руб. Y коп.».
Например, для числа 127.45 представление будет таким: «127 руб. 45 коп.».
Так с какого перепугу в в функцию передаете строку???
Цитата: shams от 24 мая 2023, 09:46Число = РубКоп("25 руб. 20 коп.");



shams

Kvark5d, а если число из строки получать ? это не так делается

shams

Kvark5d, например Для строки «25 руб. 20 коп.» функция должна вернуть число 25.20

Greek

Сумма = 127.45;
ЦелЧасть = окр(Сумма);
Сообщить (Строка(ЦелЧасть) + " руб."  + Строка (Формат(Сумма-ЦелЧасть,"ЧС=-2")) + " коп.");

Теги:

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

Рейтинг@Mail.ru

Поиск