主要内容

powermod

描述

例子

C = powermod(一个b返回模求幂一个b国防部.输入a、b必须是整数,并且必须是非负整数。有关更多信息,请参见模幂运算

例子

全部折叠

计算模幂一个b国防部通过使用powermod.的powermod函数是有效的,因为它不计算指数一个b

C = powermod(3,5,7)
C = 5

费马小定理说明如果p是质数一个不能被p,然后一个p1)国防部p1

检验费马定理P = 5A = 3.正如所料,powermod返回1

P = 5;A = 3;C = powermod(a,p-1,p)
C = 1

的所有值测试相同的情况一个不到p.这个函数powermod按元素顺序操作以返回1为单位的向量。

P = 5;A = 1:p-1;C = powermod(a,p-1,p)
C = 1 1 1 1

费马小定理说明如果p是质数和一个不能被p,然后一个p1)国防部p是1。相反,如果一个p1)国防部p是1和一个不能被p,然后p并不总是质数(p可以是伪质数)。

测试编号300400用带碱的费马小定理求素数2

P = 300:400;余数= powermod(2,p-1,p);primesFermat = p(余数= 1)
primesFermat = 307 311 313 317 331 337 341 347 349 353…359 367 373 379 383 389 397

通过与的结果比较,找到费马伪素isprime341是费马伪素数。

primennumbers = p(isprime(p));setdiff (primesFermat primeNumbers)
Ans = 341

输入参数

全部折叠

基数,指定为数字、向量、矩阵、数组或符号数字或数组。一个必须是整数。

指数或幂,指定为数字、向量、矩阵、数组或符号数字或数组。b必须是整数。

除数,指定为数字、向量、矩阵、数组或符号数字或数组。必须是非负整数。

更多关于

全部折叠

模幂运算

对于正指数b,模幂c被定义为

c一个b国防部

对于负指数b,可以通过求模乘逆来扩展定义d一个,即

cd- - - - - -b国防部

在哪里d满足关系

一个d国防部= 1。

版本历史

在R2018a中介绍

Baidu
map