Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.02;
Скачать: CL | DM;

Вниз

Нехватает 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;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.023 c
8-1075539418
Millennium
2004-01-31 11:56
2004.05.02
скриншот


14-1081525483
Kosha
2004-04-09 19:44
2004.05.02
минимизация булевых функций методом квайна-маккласки


14-1081397236
Homer
2004-04-08 08:07
2004.05.02
Оплата программы


14-1081857543
WELLiON
2004-04-13 15:59
2004.05.02
файл-менеджер


9-1069619329
DDS
2003-11-23 23:28
2004.05.02
Не могу поместить один GL_POLYGON перед другим, ерунда какая-то..