Найти коэффициенты многочлена - C (СИ)

Формулировка задачи:

Помогите решить задачу с одномерным массивом. Даны вещественные числа a0,a1,... ,an (n<=15). Найти коэффициенты многочлена (x-a0)*(x-a1)*...*(x-an).


textual

Код к задаче: «Найти коэффициенты многочлена - C (СИ)»

#include <stdio.h>
 
double coefficient(double array[], int size, double x) {
    double result = 1;
    int last = size - 1;
    
    for ( int i = 0; i < last; i++ ) {
        result *= (x-array[i]);
        printf("(%g-%g)*", x, array[i]);
    }
    result *= (x-array[last]);
    printf("(%g-%g)=", x, array[last]);
    
    return result;
}
 
int main() {
    int n;
    
    scanf("%d", &n);
    
    if ( n > 15 ) {
        n = 15;
    }
    
    if ( n > 0 ) {
        double array[n];
        double x;
        
        scanf("%lf", &x);
        
        for ( int i = 0; i < n; i++ ) {
            scanf("%lf", &array[i]);
        }
        printf("%g\n", coefficient(array, n, x));
    } else {
        printf("size value must be > 0\n");
    }
    
    return 0;
}
Эта работа вам не подошла?

Вы всегда можете заказать любую учебную работу у наших авторов от 20 руб.


СДЕЛАЙТЕ РЕПОСТ

13   голосов, оценка 3.923 из 5

Источник