[oodisc] Number in words

Vladimir Bukhal vbux на artmed.ru
Пн Окт 6 16:53:35 MSD 2003


Добрый день.
AK> Не понял, какая разница, округлять или не округлять?
AK> Так почему функция Mod не может обрабатывать числа больше
AK> чем 21474835,99 ?
>> kopeiki = Int((numb-Int(numb)+0.001)* 100)
>> 0.001-поправка, полученная эмпирическим путем. :((
>> Округляет таки криво. :(
AK> Знаете, уж лучше использовать Mod, чем писать эдакие
AK> формулы. В них же потом никто, кроме автора, не разберется.
Извините, плохо соображаю, нужно
kopeiki = Int(numb*100)-Int(numb)*100
То что было ранее- плод замученного работой воображения. :((

>> Я полагаю, что имеет смысл использовать Ваш метод GetNumeral, чтобы
>> не хранить обозначения чисел в массиве.
>> В то же время, использование массивов form() и female() легче
>> адаптируется к нуждам параметризации вывода.

AK> Вот с этим не согласен. Во-первых, надо было их хоть многомерными
AK> сделать. Или вообще оформить как структуры (хотя со структурами
AK> в Star Basic, в отличие от VBA, по-моему, плохо). Потому что
AK> нет ничего хуже, чем держать структурированные данные в
AK> неструктурированной форме.
Структуры не хватает, конечно.

AK> Во-вторых, следует избегать использования глобальных переменных
AK> Единственный случай, где в Visual Basic без этого нельзя обойтись
AK> (по крайней мере, я не знаю, как) -- это при работе с диалогами.

AK> В-третьих, мой вариант гораздо легче читается и позволяет с меньшими
AK> сложностями добавлять миллиарды, доллары, условные единицы,
AK> 38 попугаев и т. д.
Только в код, не используя параметры. :(

AK> В-четвертых, в случае, если таких слов будет очень много,
AK> следует вообще подумать о выносе их в отдельные файлы (откуда,
AK> опять-таки, получать с помощью функции). Так что мой метод еще
AK> и универсальнее на случай будущих изменений.
К сожалению, не могу засесть за нормальный анализ. Слишком эпизодически
сажусь за свою машину. Да и голова туго соображает.
Прошу прощения за беспокойство. Более основательно все продумаю после работы.

С уважением,
  Владимир <vbux на artmed.ru>




Подробная информация о списке рассылки Oo-discuss