目录

问题呈现:

求解思路:

程序:

运行结果:

TIPS:


问题呈现:

利用Euclid算法,求两个正整数a , N的最大公因数,如果两个数互质,求出从1到N的正整数中a的逆。

求解思路:

求最大公因数可以利用Euclid算法,即辗转相除法;

求a和b的逆可以利用同余定理,即a和b ,b是从1到N的正整数,a和b关于模N的余数相同,那么a和b互余。

程序:

Euclid.m

%Euclid算法
function[c,b] = Euclid_mod(a , N)
dividend = max(a , N);
divisor = min(a , N);
while(divisor > 0)remainder = rem(dividend , divisor);dividend = divisor;divisor = remainder;
end
c = fprintf('a与N的最大公因数是%d\n',dividend);
if (dividend == 1)for i = 1 : Nremainder = rem(abs(a - i) , N);if (remainder == 0)b = fprintf('且在Z(N)数列中a的逆为%d\n',i);endend
end

主程序

%Euclid.text
clc;clear;
while truea = input('输入a的取值:  ');if(a == 0)fprintf('成功退出');break;endN = input('输入N的取值:  ');Euclid_mod(a,N);fprintf('当a为0时退出循环\n');
end

运行结果:

输入a的取值:  4
输入N的取值:  5
a与N的最大公因数是1
且在Z(N)数列中a的逆为4
当a为0时退出循环
输入a的取值:  7
输入N的取值:  4
a与N的最大公因数是1
且在Z(N)数列中a的逆为3
当a为0时退出循环
输入a的取值:  0
成功退出>> 

TIPS:

1.只是介绍了一下具体流程,各位看官可以了解一下matlab其他求余的函数,辨析一下其中的区别,也会大有收获的;

2.定义函数的小技巧,和调用函数的小技巧要熟练掌握。

没什么要说的了,希望各位看官有所收获。如有必要请评论哦。瑞斯拜~~

利用Euclid算法求解两个数的最大公约数及逆 matlab相关推荐

  1. 算法(9)--两个数的最大公约数

    两个数的最大公约数 1.辗转相除法求解两个数的最大公约数 2.更相减损术求解两个数的最大公约数 3.不严格理解 1.辗转相除法求解两个数的最大公约数 辗转相除法:两个正整数a和b(a>b)的最大 ...

  2. 如何求解两个数的最大公约数

    #include <iostream> using namespace std; //暴力法求解最大公约数 int main() {int m,n,t;cout<<" ...

  3. 如何用计算机求特征值特征向量,利用QR算法求解矩阵的特征值和特征向量

    利用QR算法求解矩阵的特征值和特征向量 为了求解一般矩阵(不是那种幼稚到shi的2 x 2矩阵)的特征值. 根据定义的话,很可能需要求解高阶方程... 这明显是个坑...高阶方程你肿么破... 折腾了 ...

  4. 【C语言】实现求两个数的最大公约数【四种算法】

    题目 给定两个数,求这两个数的最大公约数 例如: 输入:20 40 输出:20 解题思路 最大公约数:即两个数据中公共约数的最大者 求解的方式比较多,暴力穷举.辗转相除法.更相减损法.Stein算法算 ...

  5. 利用 L-BFGS 算法求解基追踪问题_matlab

    实例:利用 L-BFGS 算法求解基追踪问题_matlab 构建基追踪问题 L-BFGS 求解x 正则化系数 α\alphaα 为 555 正则化系数 α\alphaα 为 101010 结果可视化 ...

  6. 利用QR算法求解矩阵的特征值和特征向量

    利用QR算法求解矩阵的特征值和特征向量 为了求解一般矩阵(不是那种幼稚到shi的2 x 2矩阵)的特征值. 根据定义的话,很可能需要求解高阶方程... 这明显是个坑...高阶方程你肿么破... 折腾了 ...

  7. ML之PLiR之LARS:利用LARS算法求解ElasticNet回归类型(包括类别编码+属性重要程度排序)问题(实数值年龄预测)

    ML之PLiR之LARS:利用LARS算法求解ElasticNet回归类型(包括类别编码+属性重要程度排序)问题(实数值年龄预测) 目录 输出结果 设计思路 核心代码 输出结果 设计思路 核心代码 x ...

  8. ML之PLiR之Glmnet:利用Glmnet算法求解ElasticNet回归类型问题(实数值评分预测)

    ML之PLiR之Glmnet算法:利用Glmnet算法求解ElasticNet回归类型问题(实数值评分预测) 目录 输出结果 1.Glmnet算法 实现代码 输出结果 0 2 1 2 2 2 3 3 ...

  9. ML之PLiR之LARS:利用LARS算法求解ElasticNet回归类型问题(实数值评分预测)

    ML之PLiR之LARS:利用LARS算法求解ElasticNet回归类型问题(实数值评分预测) 目录 设计思路 输出结果 1.LARS 2.10-fold cross validation 实现代码 ...

  10. 利用函数求任意两个数之间的和

    利用函数求任意两个数之间的和 <!DOCTYPE html> <html lang="en"><head><meta charset=&q ...

最新文章

  1. CentOS 7 Redis 3.2.8的安装和使用
  2. 关于javascript数据存储机制的一个案例。
  3. 架构师之路 — 数据库设计 — 关系型数据库的外键约束与关联
  4. xarray 笔记:DataArray
  5. why is the configuration.js being loaded?
  6. 8. Dropout and Strides For Larger Models
  7. 不是纸上谈兵,VR原来真的可以缓解抑郁症
  8. 【王道计组笔记】输入/输出设备磁盘
  9. 圆投影匹配算法描述及实现
  10. 精读45-180程序转弯模板
  11. 清华大学操作系统OS学习(十)——处理机调度
  12. doctest使用注意点 -- 省略号的使用
  13. win10计算机丢失msvcr,Win10系统打开软件提示丢失msvcr110.dll如何解决
  14. python 海龟 速度_Python中的高级turtle(海龟)作图
  15. 思科实验4.网络层:路由器IP地址配置
  16. Python3-正则表达式~爬取猫眼电影应用
  17. MySQL-老杜学习笔记
  18. 触发器 jackey
  19. 单元测试cpp:Stub
  20. Stamped读写锁

热门文章

  1. 从硬件到软件,亲自动手组建家庭多媒体文件系统
  2. 正面管教读书笔记 05 当心逻辑后果
  3. sql中exist与in 的区别
  4. 网站中木马病毒了怎么办
  5. SCZ的3篇有关sam的文章
  6. 专利检索常用的十八个网站
  7. 计算机文字输入程序,电脑“造字”,其实很简单
  8. [Android实例] Android有效解决加载大图片内存溢出问题及优化虚拟机内存
  9. wingide python_Python开发利器WingIDE破解方法
  10. 神策应用-概述认知(一)