diff options
| -rw-r--r-- | sem2/src/mpn.rs | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sem2/src/mpn.rs b/sem2/src/mpn.rs index 991e813..e8a3c16 100644 --- a/sem2/src/mpn.rs +++ b/sem2/src/mpn.rs @@ -349,6 +349,9 @@ impl Number { return Err("Модуль должен быть отличен от нуля".to_string()); } let one: Number = Number::from_digits(&vec![1], self.radix).unwrap(); + if power.is_zero() { + return Ok(one.clone() % modulo.clone()); + } let two: Number = Number::from_digits(&vec![2], self.radix).unwrap(); let mut acc = one.clone(); let mut p = power.clone(); |