Mathc initiation/Fichiers h : x 18d02a


Sommaire



Installer et compiler ces fichiers dans votre répertoire de travail.

d02a.c
/* ---------------------------------- */
/* save as d02a.c                     */
/* ---------------------------------- */
#include "x_a.h"
/* ---------------------------------- */
# define   DEGREE     2
# define   COEFF_NB   DEGREE + 1
/* ---------------------------------- */
int main(void)
{
double x =  -1;

double *Pa;
double *Pt;
double *Pqr;
double *Pq;

double a[COEFF_NB] = {-3,-20,4};

Pa  = I_Px( COEFF_NB);    /* Pa  = P(x) a -> P             */
Pt  = I_Px( COEFF_NB);    /* Pt  = P(x) temporaire         */
Pqr = I_Px( COEFF_NB);    /* Pqr = P(x) quotient remainder */
Pq  = I_Px((COEFF_NB-1)); /* Pq  = P(x) quotient           */

 clrscrn();
 
 c_a_Px(a,Pa);
 
 printf(" If P(x) is : \n\n");
 p_Px(Pa);

 printf(" The synthetic division indicates"
        " that P(%+.3f) = %+.3f\n\n",
         x, compute_horner(x,Pa,Pt,Pqr,Pq));
         
 stop();

 free(Pa);
 free(Pt);
 free(Pqr);
 free(Pq);

 return 0;
}
/* ---------------------------------- */
/* ---------------------------------- */


Dans cet exemple on voit une utilisation de la fonction compute_horner();


Exemple de sortie écran :

 If P(x) is : 

   -3.00*x**2  -20.00*x  +4.00  

 The synthetic division indicates that P(-1.000) = +21.000

 Press return to continue.