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

Вниз

Двоично-десятичное представление числа.   Найти похожие ветки 

 
Romario ©   (2004-04-03 16:15) [0]

Есть некоторое реальное число (длина числа 13 знаков) необходимо представить его в двоично-десятичном виде. Нужно прочитать данные из файла (там оно хранится в восьми байтах). Как взможно это проеобразовать в реальное число (прога которая пишет файл писана на С++)?


 
Anatoly Podgoretsky ©   (2004-04-03 16:18) [1]

А формат файла, то что 8 байт еще мало что говорит.


 
YurikGl ©   (2004-04-03 16:21) [2]

>>(длина числа 13 знаков)

В какой системе исчисления?


 
default ©   (2004-04-03 17:45) [3]

BCD - в каждом полубайте хранится одна десятчная цифра
8 байт - 16 знаковое десяичное число, почему число у тебя в 13 знаков?ведущие нули? зачем тогда лишние байты хранить или как там у Вас...


 
default ©   (2004-04-03 17:57) [4]

если полубайт отводится на знак, тогда получится 15 знаковое число никак не 13 знаковое)в каком формате в самом деле записано число в файле?


 
Romario ©   (2004-04-03 18:27) [5]

Длина числа ограничена полем ввода в программе (какойто сишный аналог TEdit), так что возможно максимально получается 15-ти знаковое. Спасибо за ответ.


 
nikkie ©   (2004-04-03 19:19) [6]

а мне кажется, что раз
>оно хранится в восьми байтах
то это вполне может оказаться обычный double.


 
Anatoly Podgoretsky ©   (2004-04-03 20:13) [7]

default ©   (03.04.04 17:45) [3]
А с чего ты взял, что входные данные в BCD формате и при том именно в таком. Автор ничего не говорил, кроме вывода.
И до сих пор не говорит.


 
default ©   (2004-04-03 21:24) [8]

Anatoly Podgoretsky ©   (03.04.04 20:13) [7]
да, я потом увидел...
пока не знаешь в како формате хранятся числа в файле ничего не сделаешь
если ты знаешь что пишет это прога в файл, то можно в принципе выяснить формат(какие именно числа и в каком порядке)


 
Romario ©   (2004-04-04 09:48) [9]

>nnike
Можешь подсказать как сохранять и читать из файла некоторое значение пусть хоть double или real не в текстовом виде.


 
uw ©   (2004-04-04 10:22) [10]

>nikkie ©   (03.04.04 19:19) [6]
>то это вполне может оказаться обычный double.

Не, скорее это Int64. Как Double представишь в двоично-десятичном виде? То, что в основном вопросе присутствует слово "реальное", еще не значит, что речь идет о Real и тем более о Double, имхо. Вот если бы автор ветки захотел показать нам, что у него там в файле находится реально, то можно было бы и конкретнее.


 
uw ©   (2004-04-04 11:11) [11]

>Romario ©   (04.04.04 09:48) [9]

procedure Proc;
var
 i64, n64: Int64;
 f1: File of Int64;
 f2: File;
begin
 AssignFile(f1, "a.fil");
 Rewrite(f1);
 i64 := 12345678;
 Write(f1, i64);
 CloseFile(f1);

 AssignFile(f2, "a.fil");
 Reset(f2, SizeOf(n64));
 BlockRead(f2, n64, 1);
 CloseFile(f2);

 AssignFile(f2, "a.fil");
 Rewrite(f2, SizeOf(n64));
 BlockWrite(f2, i64, 1);
 CloseFile(f2);

 AssignFile(f1, "a.fil");
 Reset(f1);
 Read(f1, n64);
 CloseFile(f1);
end;


 
Romario ©   (2004-04-04 17:48) [12]

> uw

Воспользовавшись Вашим примером добился желаемого приведением переменной к типу CURRENCY!!!!! Все, тему можно считать исчерпаной.
ВСЕМ СПАСИБО. ВСЕ СВОБОДНЫ. СНЯТО!!!!!!!!!!!!!



Страницы: 1 вся ветка

Текущий архив: 2004.04.25;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.025 c
14-1080554097
Dmitriy O.
2004-03-29 13:54
2004.04.25
Как определить чо нужно а что нет ?


1-1081330815
bhy
2004-04-07 13:40
2004.04.25
Как скрыть приложение с панели задач.


14-1080633357
syte_ser78
2004-03-30 11:55
2004.04.25
Фильтр русских значений


14-1080638047
Карелин Артем
2004-03-30 13:14
2004.04.25
Посоветуйте инсталлятор.


4-1077697735
denik
2004-02-25 11:28
2004.04.25
Как получить адрес текущего окна?