blob: 15793efe43ca89786177ee534cc69c41eb47a39e [file] [log] [blame]
//-------------------------------------------------------------------------------------------------------
// Copyright (C) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
//-------------------------------------------------------------------------------------------------------
// interesting floating point limits
checkNaN(NaN);
check(1, +0);
check(1, -0.0);
check(+Infinity, +Infinity);
check(0, -Infinity);
check(Math.E * Math.E * Math.E, 3);
if(!isNaN(Math.exp()))
{
WScript.Echo("error: Math.exp() is not NaN");
}
WScript.Echo("done");
function check(result, n) {
var rs = Math.exp(n);
if (isNaN(result) || isNaN(n) ||
Math.abs(rs - result) > 0.00000000001) {
WScript.Echo("exp(" + n + ") != " + result);
WScript.Echo(" wrong result is exp(" + n + ") = " + rs);
}
}
function checkNaN(x) {
var rs = Math.exp(x);
if (!isNaN(rs)) {
WScript.Echo("exp(" + x + ") != NaN");
WScript.Echo(" wrong result is exp(" + x + ") = " + rs);
}
}