dzielenie wielomianow w c z reszta modulo

niusia88
Użytkownik
Użytkownik
Posty: 24
Rejestracja: 11 maja 2009, o 10:29
Płeć: Kobieta

dzielenie wielomianow w c z reszta modulo

Post autor: niusia88 »

niestety zle mi dzieli nie wiem juz gdzie moze byc bląd
Moze ktos umie oto kod

Kod: Zaznacz cały

#include<stdio.h>

main()
{
int p,q, n, i, j, tmp, m;
int *a, *b, *w, *zp;
printf("Podaj p dla ciala Zp: ");
scanf("%d", &n);
zp = (int*) malloc(sizeof(int)*n);
for(i = 0; i < n; i++)
	zp[i] = 0;
for(i = 1; i < n; i++)
{
	if (zp[i] > 0)
		continue;
	for(j = 1; j < n; j++)
	{
		if( (j * i) % n == 1)
		{
			zp[i] = j;
			zp[j] = i;
			break;
		}
	}
}
printf("Podaj stopien wielomianu P(x): ");
scanf("%d", &p);
a=(int*)malloc(sizeof(int)*p);
printf("Podaj stopien wielomianu Q(x): ");
scanf("%d", &q);
b=(int*)malloc(sizeof(int)*q);
m = p - q + 1;
w=(int*)malloc(sizeof(int)*m);
for(i = 0; i < m; i++)
	w[i] = 0;

printf("Podaj kolejno wspolczynniki P(X): ");
for(i=0; i < p;i++)
	scanf("%d", &a[i]);
printf("Podaj kolejno wspolczynniki Q(X): ");
for(i=0; i < q;i++)
	scanf("%d", &b[i]);

for(i = 0; i < q; i++)
{
	tmp = a[i] * zp[b[0]];
	w[i] = tmp;
	for(j = 0; j < q; j++)
	{
		a[j+i] =+  - 1 * tmp * b[j];
	}
}

printf("P(X)/Q(X) = ");
for(i = 0; i < m; i++)
{
printf("%d ", (30*n + w[i]) % n);
}

printf("
R(X) = ");
for(i = q-1; i < p-1; i++)
{
printf("%d ", (30*n + a[i]) % n);
}
	
return 0;
}
ODPOWIEDZ