Ex2_21.cpp
上传用户:wuzhousb
上传日期:2022-07-12
资源大小:380k
文件大小:1k
源码类别:

书籍源码

开发平台:

Visual C++

  1. /*【例2.21】用欧几里德算法(也称辗转法)求两个整数的最大公约数。
  2. 假定两个整数分别为num1和num2,最大公约数应当是不超过其中较小数的一个整数。
  3. 辗转法的思想是:用num1除以num2,求出余数resd,如果resd==0,则当前num2就是最大公约数,
  4. 否则(resd!=0),num1=num2, num2=resd, 重复以上过程,直到resd==0为止。
  5. */
  6. #include<iostream>
  7. using namespace std;
  8. int main(){
  9.  int num1,num2,resd;
  10.  cout<<"输入两个整数:"<<endl;
  11.  cin>>num1>>num2;
  12.  cout<<num1<<"和"<<num2<<"的最大公约数为:";
  13.  for(;;){
  14. resd=num1%num2;
  15. if(resd==0)  break;
  16. num1=num2;  num2=resd;
  17.  }
  18.  cout<<num2<<endl;
  19.  return 0;
  20. }