Форум: "Основная";
Текущий архив: 2004.05.02;
Скачать: [xml.tar.bz2];
ВнизНехватает LongInteger в ТурбоПаскале Найти похожие ветки
← →
Vior (2004-04-16 00:24) [0]Извините, что спрашиваю по ТР. Суть вот в чем, есть готовая программа по зарплате, написанная в Борланд Паскаль 7 еще под ДОС, вот в ней размер начислений(в копейках) превысил максимальный размер для LongInteger. Как можно малой кровью раздвинуть диапазон LongInteger, применение плавающих не пойдет, слишком много текста программ (в около 15 отдельных модулях) и везде div, mod и т.п. используется, сам LongInteger используется переобьявленным как TMoney. Вот если бы было возможно просто переделать тип TMoney? Спасибо
← →
DrPass © (2004-04-16 00:29) [1]Никак. Если у предприятия ФЗП превышает 40 000 000 р. 00 коп., не пора ли задуматься об использовании более серьезного софта?
← →
vertal (2004-04-16 01:42) [2]В Паскале по-моему есть тип Comp - попробуйте переобъявить :
Type TMoney:Comp;
А если переполнение не более чем в 2 раза , то в некоторых случаях можно поставить
{$Q-}
(я правда не уверен насчет правильности действий с такими числами)
← →
TUser © (2004-04-16 07:15) [3]А зачем прогу ваще под ДОС переписывать? Или это типа как на почте/в сбербанке - до сих пор на каких-то ДОСькиных прогах сидятю
← →
Юрий Зотов © (2004-04-16 09:40) [4]type
TMoney = Int64;
Даст диапазон от -92.233.720.368.547.758 руб 08 коп до +92.233.720.368.547.758 руб 07 коп.
Не подойдет? Если нет, то вряд ли удастся обойтись малой кровью - в Delphi тип Int64 самый длинный из целочисленных.
Тип Comp - это фактически тот же Int64 (и с тем же диапазоном), но трактуется, как вещественный (то есть, все div и mod придется переписывать, да еще и пойдут ошибки округления с их накоплением).
Есть еще тип Currency. Но его предел в 100 раз меньше, чем у Int64 и он тоже трактуется, как вещественный.
В общем, попробуйте Int64.
← →
Юрий Зотов © (2004-04-16 09:42) [5]Блин, невнимательно прочитал вопрос. Почему-то я решил, что программа с TP переписывается под Delphi. Сорри.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.05.02;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.032 c