Pagini recente » Cod sursa (job #2635729) | Cod sursa (job #1261625) | Cod sursa (job #1756619) | Cod sursa (job #1045674) | Cod sursa (job #2176660)
#include <iostream>
#include <fstream>
using namespace std;
void euclid_extins(int a,int b,int c,int &x,int &y)
{///presupunem ca apelam aceasta functzie DOAR daca shtim sigur ca avem solutzie, altfel da eronat
if(b==0)
{
x=c/a;
y=0;
}
else
{
int q=a/b;///calculez citurile in variabila locala q pt. ca se le am
///shi atunci cind revenim
euclid_extins(b,a%b,c,x,y);
///pe baza lui x shi y ii calculez pe cei noi shi apoi ii atribui TOT pt. x,y
int xnou=y;
int ynou=x-q*y;
x=xnou;
y=ynou;
}
}
int main()
{
ifstream fin("inversmodular.in");
ofstream fout("inversmodular.out");
int a,b,d,x,y,n;
fin>>a>>n;
euclid_extins(a,b,1,x,y);
x=(x%b+b)%b;
fout<<x;
return 0;
}