Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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.033 c
11-1066225387
.::D.e.M.o.N.i.X::.
2003-10-15 17:43
2004.05.02
MpegAudio Tools


14-1081372333
XsID
2004-04-08 01:12
2004.05.02
Метод Пауэлла


7-1078839316
kamerad
2004-03-09 16:35
2004.05.02
CD ROM


11-1066589744
Alchemist
2003-10-19 22:55
2004.05.02
Закачка файлов KOLHttp


3-1080896327
Max_
2004-04-02 12:58
2004.05.02
DBExpress и Отчаяние





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский