Cod sursa(job #667664)

Utilizator lily3Moldovan Liliana lily3 Data 23 ianuarie 2012 16:36:31
Problema Invers modular Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.43 kb
#include<fstream>
using namespace std;

int i,j,a,n;
long x,y;
void euclid(int a,int b,long &x,long &y)
{
	if(b==0)
	{
		x=1;
		y=0;
	}
	else
	{
		int aux;
		euclid(b,a%b,x,y);
		aux=x;
		x=y;
		y=aux-(a/b)*y;
	}
}
int main()
{
	FILE *f=fopen("inversmodular.in","r");
	FILE *g=fopen("inversmodular.out","w");
	fscanf(f,"%d%d",&a,&n);
	euclid(a,n,x,y);
	while(x<0)
		x=n+(x%n);
	fprintf(g,"%ld",x);
	return 0;
}