Multiply two unsigned 32-bit integers.
var mul = require( '@stdlib/number/uint32/base/mul' );Multiplies two unsigned 32-bit integers.
var v = mul( 10>>>0, 4>>>0 );
// returns 40
v = mul( 2147483648>>>0, 5>>>0 ); // 2^31 * 5 = 10737418240 => 32-bit integer overflow
// returns 2147483648- The function performs C-like multiplication of two unsigned 32-bit integers, including wraparound semantics.
var discreteUniform = require( '@stdlib/random/array/discrete-uniform' );
var logEachMap = require( '@stdlib/console/log-each-map' );
var mul = require( '@stdlib/number/uint32/base/mul' );
var opts = {
'dtype': 'uint32'
};
// Create arrays of random values:
var x = discreteUniform( 100, 0, 50, opts );
var y = discreteUniform( 100, 0, 50, opts );
// Perform element-wise multiplication:
logEachMap( '%d * %d = %d', x, y, mul );#include "stdlib/number/uint32/base/mul.h"Multiplies two unsigned 32-bit integers.
#include <stdint.h>
uint32_t v = stdlib_base_uint32_mul( 5, 2 );
// returns 10The function accepts the following arguments:
- x:
[in] uint32_tfirst input value. - y:
[in] uint32_tsecond input value.
uint32_t stdlib_base_uint32_mul( const uint32_t x, const uint32_t y );#include "stdlib/number/uint32/base/mul.h"
#include <stdint.h>
#include <stdio.h>
int main( void ) {
const uint32_t x[] = { 3, 5, 10, 12 };
const uint32_t y[] = { 6, 2, 11, 24 };
uint32_t z;
int i;
for ( i = 0; i < 4; i++ ) {
z = stdlib_base_uint32_mul( x[ i ], y[ i ] );
printf( "%u * %u = %u\n", x[ i ], y[ i ], z );
}
}@stdlib/number/int32/base/mul: perform C-like multiplication of two signed 32-bit integers.