From 9b8a1607ed17da030468fa07b94737607850ee23 Mon Sep 17 00:00:00 2001 From: Delyan Angelov Date: Wed, 26 Feb 2025 05:25:51 +0200 Subject: [PATCH] math.big: add vlib/math/big/big_division_test.v (follow-up to 270941a) --- vlib/math/big/big_division_test.v | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 vlib/math/big/big_division_test.v diff --git a/vlib/math/big/big_division_test.v b/vlib/math/big/big_division_test.v new file mode 100644 index 000000000..cf6b6e1d4 --- /dev/null +++ b/vlib/math/big/big_division_test.v @@ -0,0 +1,20 @@ +import math.big + +const d_2 = big.integer_from_int(2) +const d_4 = big.integer_from_int(4) +const d_10 = big.integer_from_int(10) + +fn test_dividing_big_numbers() { + mut n := 250_000 + base := d_10.pow(u32(n - 1)) + eprintln('> n: ${n} | base.bit_len: ${base.bit_len()}') + a := d_4 * base + b := d_2 * base + eprintln('> a.bit_len: ${a.bit_len()} | b.bit_len: ${b.bit_len()}') + assert a.bit_len() == 830481 + assert b.bit_len() == 830480 + c := a / b // c should be 2 + eprintln('> c: ${c} | c.bit_len(): ${c.bit_len()}') + assert c.str() == '2' + assert c.bit_len() == 2 +} -- 2.39.5