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

Вниз

Как избавиться от представления чисел в виде *...*Е*..*?   Найти похожие ветки 

 
BVV   (2006-08-04 17:00) [0]

Как избавиться от представления чисел в  виде *...*Е*..*?
Пример. Возвожу 3 в 51 степень. На калькуляторе получаем 2153693963075557766310747, а в моя прога выдает  2,15369396307556E24.  То есть грубо говоря  215369396307555 округляется до 215369396307556. Как избавиться от Е. Вернее как заставить мою прогу работать с полными числами, потому как результат подсчитанный на калькуляторе отличается от выданного моей прогой.

var
   Rezult, Osnovanie, Osnovanie : extended;
   k: integer;

begin
Rezult := 1;
Osnovanie := 3;
Osnovanie :=   51;
   For k:=1 to Stepeni do
   begin
       Rezult := Rezult *  Osnovanie;
   end;


 
Jeer ©   (2006-08-04 17:07) [1]

Видишь ли, какое дело, калькулятор калькулятору - рознь.
В языковых реализациях же предсмотрены всего несколько стандартных типов данных, число значащих цифр в которых ограничено принятым для этого типа форматом.

Поэтому - либо умерь свои возжелания, либо сотвори собственный формат длинных чисел, за вычисления и визуалиазацию в базисе которого именно ты несешь ответственность.


 
Desdechado ©   (2006-08-04 17:19) [2]

> Как избавиться от Е
Использовать функцию Format


 
Jeer ©   (2006-08-04 17:30) [3]

Desdechado ©   (04.08.06 17:19) [2]

Увы, но не поможет получить желаемое число значащих цифр.


 
Desdechado ©   (2006-08-04 17:33) [4]

само собой.
я ж указал, на что я отвечаю...


 
Jeer ©   (2006-08-04 17:42) [5]


> Вернее как заставить мою прогу работать с полными числами,


Это было желаемое.


 
BVV   (2006-08-04 18:15) [6]

Понял. ТОгда встречный вопрос а как "сотворить собственный формат длинных чисел" ?


 
Jeer ©   (2006-08-04 18:24) [7]

Контр-вопрос - а зачем ?
Т.е. цель таких точных вычислений есть что ?


 
BVV   (2006-08-04 18:26) [8]

Реализовать алгоритм шифрования RSA. В основном прога работает правильно но при больших значениях глючит.


 
DrPass ©   (2006-08-04 18:30) [9]

Точность типа Extended - 18-19 значащих цифр. Точнее компьютер не может считать физически. По крайней мере, без использования специализированных алгоритмов, когда большие числа вычисляются "по частям"


 
Jeer ©   (2006-08-04 18:35) [10]

BVV   (04.08.06 18:26) [8]

Тогда ищи в Инете модули/библиотеки для работы с целыми длинными числами.
Они есть.
Например, FGint.
Это если самому лениво.


 
Desdechado ©   (2006-08-04 18:37) [11]

Ламерский вопрос - а зачем там арифметические операции?
Сдвигами и побитовыми обойтись нельзя?


 
Jeer ©   (2006-08-04 18:41) [12]

Q^x
где q и x целые числа - обычная операция для криптодел.


 
Jeer ©   (2006-08-04 18:42) [13]

http://www.submanifold.be/



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

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

Наверх




Память: 0.49 MB
Время: 0.054 c
1-1153124673
serg_iv
2006-07-17 12:24
2006.08.27
системное сообщение о выделении текста


2-1154376390
Lexmark
2006-08-01 00:06
2006.08.27
Запуск программы на чужом компьютере


2-1154575563
Живописец
2006-08-03 07:26
2006.08.27
Как сделать такую опцию как изменение цвета в Фотошопе?


1-1153251715
Gloomer
2006-07-18 23:41
2006.08.27
Как перекодировать строку из UTF-8 в ANSI?


2-1154672198
Reng
2006-08-04 10:16
2006.08.27
Прогммма сервер не отвечает