Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 23.02.2011, 20:31
Аватар для Amphiluke
   ☽
Отправить личное сообщение для Amphiluke Посмотреть профиль Найти все сообщения от Amphiluke
 
Регистрация: 07.01.2011
Сообщений: 254

P.S.
alert((10000000000000000 == 10000000000000001))

Ответить с цитированием
  #12 (permalink)  
Старый 23.02.2011, 21:00
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

alert((10000000000000000 === 10000000000000001));
Ответить с цитированием
  #13 (permalink)  
Старый 24.02.2011, 05:51
Аватар для FINoM
Новичок
Отправить личное сообщение для FINoM Посмотреть профиль Найти все сообщения от FINoM
 
Регистрация: 05.09.2010
Сообщений: 2,298

Сообщение от monolithed
это сарказм?
Именно. Каким образом мне использовать программу, выдающую такое количество нулей, при том что ты даже не хочешь объяснить принцип своего кода?
Ответить с цитированием
  #14 (permalink)  
Старый 24.02.2011, 09:11
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Сообщение от FINoM
Каким образом мне использовать программу, выдающую такое количество нулей
кто мещает использовать методы toFixed(), toPrecision()?
напомню вопрос:
Сообщение от FINoM
Как получить максимальное и минимальное допустимое число в не экспоненциальном виде?
что-тут не так?
Сообщение от monolithed
при том что ты даже не хочешь объяснить принцип своего кода?
что конкретно объяснить?
Ответить с цитированием
  #15 (permalink)  
Старый 25.02.2011, 05:50
Аватар для FINoM
Новичок
Отправить личное сообщение для FINoM Посмотреть профиль Найти все сообщения от FINoM
 
Регистрация: 05.09.2010
Сообщений: 2,298

Получил.
function max() {
	var x=2;
	while(x!=x+1) {
		x*=2;
	}
	return x;
}
alert([
max()-1,
max(),
max()+1
].join('\n'));
Всем спасибо за внимание.

Выдаются ли кому-то числа, отличные от 9007199254740991 и 9007199254740992?

Последний раз редактировалось FINoM, 25.02.2011 в 06:02.
Ответить с цитированием
  #16 (permalink)  
Старый 25.02.2011, 12:58
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

В каком месте здесь максимально допустимое число?
function max() {
	var x=2;
	while(x!=x+1) {
		x*=2;
	}
	return x;
}
var maxValue = max();
alert([
maxValue-1, // 9007199254740991
maxValue, // 9007199254740992
maxValue + 10 // 9007199254741002
].join('\n'));


Читайте посты Amphiluke.
Ответить с цитированием
  #17 (permalink)  
Старый 25.02.2011, 13:36
Аватар для FINoM
Новичок
Отправить личное сообщение для FINoM Посмотреть профиль Найти все сообщения от FINoM
 
Регистрация: 05.09.2010
Сообщений: 2,298

Мне собственно нужно максимальное точное число, для параметра, преобразующегося из строки и, если параметр больше чем это число, применить преобразование в bigInt.
Ответить с цитированием
  #18 (permalink)  
Старый 25.02.2011, 14:48
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

Максимальная точность и IEEE754 вещи несовместимые. Как уже было замечено, для чисел с плавающей точкой существует погрешность. Она зависит от того, насколько велико число. Если число мало, то и погрешность будет на уровне 10^-15. Если же Вы оперируете числами порядка 10^50, то будьте готовы к тому, что погрешность будет больше 1 (что и произошло в Вашем примере).
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как получить список элементов в localStorage? Бобр Общие вопросы Javascript 8 17.09.2013 14:32
Как получить название композиции из Windows Mepia Plyaer alx99 Javascript под браузер 1 18.02.2011 16:21
Разбить число на миссив, как ? Bogdan808 Общие вопросы Javascript 20 01.09.2010 18:19
Как получить указатель на элемент вызвавший функцию pelayo Общие вопросы Javascript 9 29.06.2010 23:32
Как округлить число в меньшую сторону с заданной точностью? barcelona Общие вопросы Javascript 2 19.08.2009 12:07