Autor Wiadomość
Ricko
PostWysłany: Nie 9:49, 24 Kwi 2011    Temat postu: C++ Rozszerzony Algorytm Euklidesa

Rozszerzony Algorytm Euklidesa

Źródło: Praca własna na podstawie pseudokodu

Cytat:
#include<iostream>

using namespace std;

int main () {
int a,b,d,r1,r2;
float u,v,u1,u2,q,p1,p2;

cout<<"POBIERANIE DANYCH"<<endl<<"Podaj dwie liczby, z ktorych chcesz wyliczyc NWD"<<endl;
cin>>a>>b;


cout<<endl<<"WYKONYWANIE PROGRAMU"<<endl;

u1=1;
r1=a;
u2=0;
r2=b;

while (r2>0)
{
q=r1/r2;

p1=u1; //zmienna pomocnicza dla u//
u1=u2;
p2=r1; //zmienna pomocnicza dla r//
r1=r2;
u2=p1-q*u2;
r2=p2-q*r2;
}

d=r1;
u=u1;
v=(r1-u1*a)/b;

cout<<"NWD wynosi "<<d<<endl<<"u i v wynosza "<<u<<" "<<v<<endl<<endl<<"ZAKONCZONO DZIALANIE ROZSZERZONEGO ALGORYTMU EUKLIDESA"<<endl;

system("pause");

return 0;
}


Aby sprawdzić działanie algorytmu należy wykonać działanie ua+vb=d

Powered by phpBB © 2001,2002 phpBB Group