包详细信息

@stdlib/math-base-assert-is-nonnegative-integer

stdlib-js103.1kApache-2.00.2.1

Test if a finite double-precision floating-point number is a nonnegative integer.

stdlib, stdmath, assertion, assert

自述文件

<summary> About stdlib... </summary>

We believe in a future in which the web is a preferred environment for numerical computation. To help realize this future, we've built stdlib. stdlib is a standard library, with an emphasis on numerical and scientific computation, written in JavaScript (and C) for execution in browsers and in Node.js.

The library is fully decomposable, being architected in such a way that you can swap out and mix and match APIs and functionality to cater to your exact preferences and use cases.

When you use stdlib, you can be absolutely certain that you are using the most thorough, rigorous, well-written, studied, documented, tested, measured, and high-quality code out there.

To join us in bringing numerical computing to the web, get started by checking us out on GitHub, and please consider financially supporting stdlib. We greatly appreciate your continued support!

isNonNegativeInteger

[![NPM version][npm-image]][npm-url] [![Build Status][test-image]][test-url] [![Coverage Status][coverage-image]][coverage-url]

Test if a finite [double-precision floating-point number][ieee754] is a nonnegative integer.

## Installation bash npm install @stdlib/math-base-assert-is-nonnegative-integer
## Usage javascript var isNonNegativeInteger = require( '@stdlib/math-base-assert-is-nonnegative-integer' ); #### isNonNegativeInteger( x ) Tests if a finite [double-precision floating-point number][ieee754] is a nonnegative integer. javascript var bool = isNonNegativeInteger( 1.0 ); // returns true bool = isNonNegativeInteger( 0.0 ); // returns true bool = isNonNegativeInteger( -10.0 ); // returns false
## Notes - The function assumes a finite number. If provided positive infinity, the function will return true, when, in fact, the result is undefined. If x can be infinite, wrap the implementation as follows: javascript function check( x ) { return ( x < Infinity && isNonNegativeInteger( x ) ); } var bool = check( Infinity ); // returns false - The function does not distinguish between positive and negative zero. javascript var bool = isNonNegativeInteger( 0.0 ); // returns true bool = isNonNegativeInteger( -0.0 ); // returns true
## Examples javascript var isNonNegativeInteger = require( '@stdlib/math-base-assert-is-nonnegative-integer' ); var bool = isNonNegativeInteger( 5.0 ); // returns true bool = isNonNegativeInteger( 0.0 ); // returns true bool = isNonNegativeInteger( -1.0 ); // returns false bool = isNonNegativeInteger( 3.14 ); // returns false bool = isNonNegativeInteger( NaN ); // returns false

## C APIs
### Usage c #include "stdlib/math/base/assert/is_nonnegative_integer.h" #### stdlib_base_is_nonnegative_integer( x ) Tests if a finite [double-precision floating-point number][ieee754] is a nonnegative integer. c bool out = stdlib_base_is_nonnegative_integer( 1.0 ); // returns true out = stdlib_base_is_nonnegative_integer( -10.0 ); // returns false The function accepts the following arguments: - x: [in] double input value. c bool stdlib_base_is_nonnegative_integer( const double x );
### Examples c #include "stdlib/math/base/assert/is_nonnegative_integer.h" #include <stdio.h> #include <stdlib.h> #include <stdbool.h> int main( void ) { double x; bool v; int i; for ( i = 0; i < 100; i++ ) { x = ( ( (double)rand() / (double)RAND_MAX ) * 100.0 ) - 50.0; v = stdlib_base_is_nonnegative_integer( x ); printf( "x = %lf, is_nonnegative_integer(x) = %s\n", x, ( v ) ? "true" : "false" ); } }

* ## See Also - [@stdlib/math-base/assert/is-integer][@stdlib/math/base/assert/is-integer]: test if a finite double-precision floating-point number is an integer. - [@stdlib/math-base/assert/is-negative-integer][@stdlib/math/base/assert/is-negative-integer]: test if a finite double-precision floating-point number is a negative integer. - [@stdlib/math-base/assert/is-nonpositive-integer][@stdlib/math/base/assert/is-nonpositive-integer]: test if a finite double-precision floating-point number is a nonpositive integer. - [@stdlib/math-base/assert/is-positive-integer][@stdlib/math/base/assert/is-positive-integer]: test if a finite double-precision floating-point number is a positive integer.
* ## Notice This package is part of [stdlib][stdlib], a standard library for JavaScript and Node.js, with an emphasis on numerical and scientific computing. The library provides a collection of robust, high performance libraries for mathematics, statistics, streams, utilities, and more. For more information on the project, filing bug reports and feature requests, and guidance on how to develop [stdlib][stdlib], see the main project [repository][stdlib]. #### Community [![Chat][chat-image]][chat-url] --- ## License See [LICENSE][stdlib-license]. ## Copyright Copyright © 2016-2024. The Stdlib [Authors][stdlib-authors].
[npm-image]: http://img.shields.io/npm/v/@stdlib/math-base-assert-is-nonnegative-integer.svg [npm-url]: https://npmjs.org/package/@stdlib/math-base-assert-is-nonnegative-integer [test-image]: https://github.com/stdlib-js/math-base-assert-is-nonnegative-integer/actions/workflows/test.yml/badge.svg?branch=v0.2.1 [test-url]: https://github.com/stdlib-js/math-base-assert-is-nonnegative-integer/actions/workflows/test.yml?query=branch:v0.2.1 [coverage-image]: https://img.shields.io/codecov/c/github/stdlib-js/math-base-assert-is-nonnegative-integer/main.svg [coverage-url]: https://codecov.io/github/stdlib-js/math-base-assert-is-nonnegative-integer?branch=v0.2.1 [chat-image]: https://img.shields.io/gitter/room/stdlib-js/stdlib.svg [chat-url]: https://app.gitter.im/#/room/#stdlib-js_stdlib:gitter.im [stdlib]: https://github.com/stdlib-js/stdlib [stdlib-authors]: https://github.com/stdlib-js/stdlib/graphs/contributors [umd]: https://github.com/umdjs/umd [es-module]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules [deno-url]: https://github.com/stdlib-js/math-base-assert-is-nonnegative-integer/tree/deno [deno-readme]: https://github.com/stdlib-js/math-base-assert-is-nonnegative-integer/blob/deno/README.md [umd-url]: https://github.com/stdlib-js/math-base-assert-is-nonnegative-integer/tree/umd [umd-readme]: https://github.com/stdlib-js/math-base-assert-is-nonnegative-integer/blob/umd/README.md [esm-url]: https://github.com/stdlib-js/math-base-assert-is-nonnegative-integer/tree/esm [esm-readme]: https://github.com/stdlib-js/math-base-assert-is-nonnegative-integer/blob/esm/README.md [branches-url]: https://github.com/stdlib-js/math-base-assert-is-nonnegative-integer/blob/main/branches.md [stdlib-license]: https://raw.githubusercontent.com/stdlib-js/math-base-assert-is-nonnegative-integer/main/LICENSE [ieee754]: https://en.wikipedia.org/wiki/IEEE_754-1985 [@stdlib/math/base/assert/is-integer]: https://www.npmjs.com/package/@stdlib/math-base-assert-is-integer [@stdlib/math/base/assert/is-negative-integer]: https://www.npmjs.com/package/@stdlib/math-base-assert-is-negative-integer [@stdlib/math/base/assert/is-nonpositive-integer]: https://www.npmjs.com/package/@stdlib/math-base-assert-is-nonpositive-integer [@stdlib/math/base/assert/is-positive-integer]: https://www.npmjs.com/package/@stdlib/math-base-assert-is-positive-integer

更新日志

CHANGELOG

Package changelog.

## 0.2.0 (2024-07-27)
### Features - 054472b - add C implementation for math/base/assert/is-nonnegative-integer (#1746)
### Closed Issues This release closes the following issue: #1723
### Commits
- d04dcbd - docs: remove private annotations in C comments (by Philipp Burckhardt) - d40dbaf - chore: update package meta data (#1812) (by stdlib-bot) - 054472b - feat: add C implementation for math/base/assert/is-nonnegative-integer (#1746) (by Gunj Joshi, Athan Reines)
### Contributors A total of 3 people contributed to this release. Thank you to the following contributors: - Athan Reines - Gunj Joshi - Philipp Burckhardt

## 0.1.2 (2024-02-23) No changes reported for this release.
## 0.2.0 (2024-02-14) No changes reported for this release.
## 0.1.1 (2023-10-09) No changes reported for this release.
## 0.1.0 (2023-09-23)
### Features - 58832ee - update minimum TypeScript version
### BREAKING CHANGES - 58832ee: update minimum TypeScript version - 58832ee: update minimum TypeScript version to 4.1 - To migrate, users should upgrade their TypeScript version to at least version 4.1.
### Commits
- 58832ee - feat: update minimum TypeScript version (by Philipp Burckhardt) - b734544 - refactor: use strictEqual checks (by Philipp Burckhardt)
### Contributors A total of 1 person contributed to this release. Thank you to this contributor: - Philipp Burckhardt

## 0.0.7 (2022-02-16) No changes reported for this release.
## 0.0.6 (2021-08-22) No changes reported for this release.
## 0.0.5 (2021-07-06) No changes reported for this release.
## 0.0.4 (2021-06-27) No changes reported for this release.
## 0.0.3 (2021-06-16) No changes reported for this release.
## 0.0.2 (2021-06-15) No changes reported for this release.
## 0.0.1 (2021-06-14) No changes reported for this release.