Skip to content

Commit 9b8a160

Browse files
committed
math.big: add vlib/math/big/big_division_test.v (follow-up to 270941a)
1 parent 270941a commit 9b8a160

1 file changed

Lines changed: 20 additions & 0 deletions

File tree

‎vlib/math/big/big_division_test.v‎

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
import math.big
2+
3+
const d_2 = big.integer_from_int(2)
4+
const d_4 = big.integer_from_int(4)
5+
const d_10 = big.integer_from_int(10)
6+
7+
fn test_dividing_big_numbers() {
8+
mut n := 250_000
9+
base := d_10.pow(u32(n - 1))
10+
eprintln('> n: ${n} | base.bit_len: ${base.bit_len()}')
11+
a := d_4 * base
12+
b := d_2 * base
13+
eprintln('> a.bit_len: ${a.bit_len()} | b.bit_len: ${b.bit_len()}')
14+
assert a.bit_len() == 830481
15+
assert b.bit_len() == 830480
16+
c := a / b // c should be 2
17+
eprintln('> c: ${c} | c.bit_len(): ${c.bit_len()}')
18+
assert c.str() == '2'
19+
assert c.bit_len() == 2
20+
}

0 commit comments

Comments
 (0)