标签: infinity

为什么在“DBL_MAX”和无穷大附近会出现加法错误?

在试验舍入模式时,FE_DOWNWARD( 和FE_TOWARDZERO) 显然无法形成预期的无穷大之和,而是DBL_MAX在添加DBL_MAX和 1 ULP时形成DBL_MAX

以下是演示意外总和的测试代码。在不同的回合模式下,它会增加DBL_MAX接近 0.5 ULP 和 1.0 ULP 的值。FE_TONEAREST和中没有指出任何问题FE_UPWARD

问题:

  1. 你同意这是一个错误吗?
  2. 代码在另一台机器上是否能形成正确的答案?
  3. 可悲的是,这是最近报告的另一个近乎DBL_MAX问题之后的结果,所以也许我的数学库低于标准。请求就如何报告提供建议。

编译器注释:
调用:Cygwin C 编译器
gcc -std=c11 -O0 -g3 -pedantic -Wall -Wextra -Wconversion -c -fmessage-length=0 -v -MMD -MP -MF"rand_i.d" -MT"rand_i .o" -o "rand_i.o" "../rand_i.c"
COLLECT_GCC=gcc
目标:x86_64-pc-cygwin
gcc 版本 11.3.0 (GCC)
GNU C11 (GCC) 版本 11.3.0 (x86_64-pc- cygwin)
由GNU C版本11.3.0、GMP版本6.2.1、MPFR版本4.1.0、MPC版本1.2.1、isl版本isl-0.25-GMP编译


#include <fenv.h>
#include …
Run Code Online (Sandbox Code Playgroud)

c floating-point infinity

6
推荐指数
1
解决办法
143
查看次数

如何在Perl中检查标量中的'inf'值?

可能重复:
如何在Perl中创建或测试NaN或无穷大?

如果标量保持inf值,我该如何检查?

我检查NaN $scalar != $scalar,该怎么办inf

$scalar == inf不起作用,因为inf是一个赤字

perl infinity

5
推荐指数
1
解决办法
1661
查看次数

Double.NaN和double.NegativeInfinity的CompareTo行为

我在C#(.Net 4)中做了一些统计操作,double[]然后我发现了一些奇怪的CompareTo方法和方法double.NaN.当我尝试这段代码时:

double.NaN.CompareTo(double.NegativeInfinity) //returns -1
Run Code Online (Sandbox Code Playgroud)

它意味着double.NaN甚至比double.NegativeInfinity!任何人都能解释为什么会这样吗?

c# double icomparable nan infinity

5
推荐指数
2
解决办法
2082
查看次数

IND和NAN数字之间有什么区别

NAN值表示Not A Number,IND值表示Indeterminate number.但这两者之间有什么区别.我们怎样才能在c ++中代表两者.

c++ nan infinity

5
推荐指数
1
解决办法
4172
查看次数

Javascript中使用的Infinity属性是什么?

为什么Infinity属性用作命令(而不是结果)

例如,下面的代码有效,但结果不符合我的预期.

alert(isOdd(Infinity));

function isOdd(num) { return num%2==1; }
Run Code Online (Sandbox Code Playgroud)

javascript infinity

5
推荐指数
2
解决办法
2212
查看次数

Infinity和NaN有哪些类型?

我能得到Infinity并且NaN通过

n = 9.0 / 0 #=> Infinity
n.class #=> Float

m = 0 / 0.0 #=> NaN
m.class #=> Float
Run Code Online (Sandbox Code Playgroud)

但是当我想要访问InfinityNaN直接访问时:

Infinity #=> uninitialized constant Infinity (NameError)
NaN #=> uninitialized constant NaN (NameError)
Run Code Online (Sandbox Code Playgroud)

什么是InfinityNaN?它们是对象,关键字还是其他什么?

ruby nan infinity

5
推荐指数
1
解决办法
1405
查看次数

java中两个双数的总和是无穷大

即使这些数字不是无穷大,两个double的总和也是无穷大.代码如下.

entropy += (probs.get(key)* (Math.log(probs.get(key)) / Math.log(2.0)));
    if(entropy == Double.POSITIVE_INFINITY || entropy == Double.NEGATIVE_INFINITY){
        System.out.println("Prob:"+probs.get(key));
        System.out.println("base 10: "+Math.log(probs.get(key)));
        System.out.println("base 2: "+Math.log(2.0));
        System.out.println("result: "+(probs.get(key)*(Math.log(probs.get(key))) / Math.log(2.0)));
        System.out.println("entropy before sum "+temp);
        break;
    }`
Run Code Online (Sandbox Code Playgroud)

结果是:

Prob:1.0476603084695572E305
base 10: 702.3350127634005
base 2: 0.6931471805599453
result: 1.0615472972511642E308
entropy before sum: 1.246498306457423E308
Run Code Online (Sandbox Code Playgroud)

那怎么可能总和

result + entropy = 1.0615472972511642E308 + 1.246498306457423E308 = INFINITY

java double sum infinity

5
推荐指数
1
解决办法
1571
查看次数

如何获得一个浮点无穷大,当乘以零时得到零

我如何获得一个“足够小的”无穷大使其零乘积为零?

我正在为Python使用整数编程求解器,而我的一些变量具有无限的成本。我不能使用,float('inf')因为float('inf')*0 = NaN

python floating-point infinity

5
推荐指数
1
解决办法
1053
查看次数

无限滑块上一个按钮逻辑不起作用

我正在尝试使用jQuery创建一个无限滑块.活动幻灯片将是屏幕的2/3,即将到来的幻灯片将是1/3.所以你已经看到了下一张幻灯片的预览.

我构建的滑块正在工作.单击next滑块时将向左侧动画.

诀窍

在初始化时,我在最后一张幻灯片后复制了前两张幻灯片.当slideIndex关注当前索引时,当幻灯片的数量减去1时,它会将滑块重置为零.所以你有一个无限滑块.

问题

当我在第一张幻灯片上并且之前单击时我也想要应用效果时出现问题.它基本上应该这样做,但不能将滑块重置为零,而是重置幻灯片的末尾.

var slider = $('.slider');
var slides = slider.find('.slides').children();
var slidesW = slides.width();

root.offset = -Math.abs((root.slideIndex * slides.eq(index).width()));
console.log(root.offset);

// Update active class
slides.removeClass('active');
// slides.eq(index).addClass('active');

// Add class active
TweenMax.to(slides.eq(index), 1, {
    className: 'active', 
    onComplete: function() {

        if (root.slideIndex >= (root.numOfSlides - 2)) {

            slider.find('.slides').addClass('no-transition');

            slides.removeClass('active');
            slides.filter(':first').addClass('active');

            root.offset = 0;

            TweenMax.set(slider.find('.slides'), {
                x: root.offset, 
                onComplete: function() {
                    root.slideIndex = 0;
                    $('#footer .paging #indicator').find('span').html('01');

                    return false;
                }
            });

        } 
    }
}); …
Run Code Online (Sandbox Code Playgroud)

css jquery infinity

5
推荐指数
1
解决办法
170
查看次数

在C++中比较无穷大和无穷大

假设我有两个变量都设置为无穷大

double l = std::numeric_limits<double>::infinity();
double r = std::numeric_limits<double>::infinity();
Run Code Online (Sandbox Code Playgroud)

在代码的另一点,我对这两个变量进行了比较

if (l < r) {}
Run Code Online (Sandbox Code Playgroud)

这个比较的结果是在库中正确定义的吗?(在我的程序的逻辑中,我希望结果是false.)

c++ floating-point infinity

5
推荐指数
1
解决办法
1657
查看次数

标签 统计

infinity ×10

floating-point ×3

nan ×3

c++ ×2

double ×2

c ×1

c# ×1

css ×1

icomparable ×1

java ×1

javascript ×1

jquery ×1

perl ×1

python ×1

ruby ×1

sum ×1