歐幾裡得演算法(C++)

來源:互聯網
上載者:User

#include<iostream>
using  namespace std;

int Eculid(int d,int f)
{
 int X,Y,R;
 X=d;
 Y=f;
 while(Y!=0)
 {
       R=X%Y;
    X=Y;
    Y=R;
 }
 return X;
}

void ExEculid(int d,int f)
{
 int x1,x2,x3;
 int y1,y2,y3;
 int t1,t2,t3;
 int q;
 x1=1;
 x2=0;
 x3=f;
 y1=0;
 y2=1;
 y3=d;
 while(true)
 {
  if(y3==0)
  {
   cout<<"the gcd is(ExEculid):"<<x3<<endl;
            cout<<"No contrary!"<<endl;
   break;
  }
      if(y3==1)
  {
   cout<<"the gcd is(ExEculid):"<<y3<<endl;
   cout<<"the contrary is(ExEculid):"<<y2<<endl;
   break;
  }
     q=x3/y3;
  t1=x1-q*y1;
        t2=x2-q*y2;
  t3=x3-q*y3;
  x1=y1;
  x2=y2;
  x3=y3;
  y1=t1;
  y2=t2;
  y3=t3;
 }
 
}

void main()
{
 int a,b;
 cout<<"please input two numbers:";
 cin>>a;
 cin>>b;
 cout<<"the gcd is(Eculid):"<<Eculid(a,b)<<endl;
    ExEculid(a,b);
}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.