|
Текст подпрограммы и версий zp30r_c.zip zp30d_c.zip |
Тексты тестовых примеров tzp30r_c.zip tzp30d_c.zip |
Вычисление значения полинома с вещественными коэффициентами от заданного вещественного аргумента.
zp30r_c вычисляет значение полинома степени NР с вещественными коэффициентами
A(1) + A(2)*X + A(3)*X2 + ... + A(NP + 1)*XNP
от заданного вещественного аргумента по схеме Горнера.
real zp30r_c (integer *np, real *a, real *x)
Параметры
| np - | заданная степень полинома (тип: целый); |
| a - | вещественный вектор длины np + 1, содержащий коэффициенты исходного полинома в порядке возрастания степеней; |
| x - | заданное значение аргумента (тип: вещественный). |
Версии
| zp30d_c - | вычисление значения полинома с вещественными коэффициентами от заданного вещественного аргумента с повышенной точностью. При этом вектор a и значение аргумента x должны иметь тип double. |
Вызываемые подпрограммы: нет
Замечания по использованию: нет
int main(void)
{
/* Initialized data */
static float a[5] = { 24.f,-50.f,35.f,-10.f,1.f };
/* Local variables */
extern float zp30r_c(int *, float *, float *);
static float x, y;
static int np, i__;
np = 4;
x = 3.f;
y = (float)zp30r_c(&np, a, &x);
printf("\n %5i \n", np);
for (i__ = 1; i__ <= 5; ++i__) {
printf("\n %16.7e \n", a[i__ - 1]);
}
printf("\n\n %16.7e %16.7e \n", x, y);
return 0;
} /* main */
Результат: y = 0.0