Jelajahi Sumber

For invmod, b has to be > 1, fix a logic typo

Ed Yu 1 tahun lalu
induk
melakukan
de41c2256d
1 mengubah file dengan 3 tambahan dan 3 penghapusan
  1. 3 3
      core/math/big/internal.odin

+ 3 - 3
core/math/big/internal.odin

@@ -2046,9 +2046,9 @@ internal_int_inverse_modulo :: proc(dest, a, b: ^Int, allocator := context.alloc
 	if internal_is_positive(a) && internal_eq(b, 1) { return internal_zero(dest)	}
 
 	/*
-		`b` cannot be negative and has to be > 1
+		`b` cannot be negative and b has to be > 1
 	*/
-	if internal_is_negative(b) || internal_gt(b, 1) { return .Invalid_Argument }
+	if internal_is_negative(b) || !internal_gt(b, 1) { return .Invalid_Argument }
 
 	/*
 		If the modulus is odd we can use a faster routine instead.
@@ -2954,4 +2954,4 @@ internal_zero_unused :: proc { internal_int_zero_unused, }
 
 /*
 	==========================    End of low-level routines   ==========================
-*/
+*/