#include <stdio.h>
#include <conio.h>
void main()
{
const ArrLength = 100;
int n, m, k, tmp, i, g, x;
int N[ArrLength];
int M[ArrLength];
int R[ArrLength];
x = -1;
tmp = 0;
for (k = 0; k < ArrLength; k++)
{
N[k] = 0;
M[k] = 0;
R[k] = 0;
}
printf("Введите степень 1 многочлена*: ");
scanf("%d", &n);
printf("\nВведите коэффициенты: ");
for (k = 0; k <= n; k++)
scanf("%d", &N[k]);
printf("Введите степень 2 многочлена*: ");
scanf("%d", &m);
printf("\nВведите коэффициенты: ");
for (k = 0; k <= m; k++)
scanf("%d", &M[k]);
for (i = 0; i <= n+m; i++)
{
for (g = 0; g <= m+n; g++)
{
tmp = N * M[g];
if (tmp>0||tmp<0)
{
x = x + 1;
R[x] = tmp;
printf ("\n%d', R[x]);
}
}
}
getch();
}
Произведение многочленов
По заданным коэффициентам многочлена n-й степени А(х) и многочлена m-й степени В(х) определить коэффициенты многочлена С(х)=А(х)*В(х).
Программу то написал, но она не складывает подобные члены, из-за чего получается неверный рез-тат. Вот код:
Код:
Я нашел в одной здешней теме:
Пусть у члена с х степень k. Тогда для него коэф. равен а0*b(k)+a1*b(k-1)+...+a(k-1)b1+ak*b0
Но как реализовать это в программе я не понял.