Demo entry 6684837

Regula Falsi


Submitted by anonymous on Dec 17, 2017 at 19:46
Language: C. Code size: 1.5 kB.

float f(float x)
    return 4*x+8;
/*la fonction*/
void regula (float *x, float x0, float x1, float fx0, float fx1, int *itr)
    *x = x0 - ((x1 - x0) / (fx1 - fx0))*fx0;
    printf("L'iteration no. %1d X = %7.5f \n", *itr, *x);
void main ()
    int  maxitr;
    float x0,x1,x2,x3,err,itr=0;
    itr – le nombre de fois de l'iteration
    maxitr – le nomber maximal de l'iteration
    x0, x1 – le champ ou on peut trouver la racine
    x2 – la valeur de racine a n ieme iteration
    x3 – la valeur de racine a (n + 1) ieme iteration
    err – l'erreur acceptable
    x – la valeur de la racine à la n ième itération dans la fonction regula
    f(x0), f(x1) – la valeur de f(x0) et f(x1)
    printf("\nSaisir les valeur x0, x1, erreur acceptable et l'iterations maximals:\n");
    scanf("%f %f %f %d", &x0, &x1, &err, &maxitr);
    regula (&x2, x0, x1, f(x0), f(x1), &itr);  
 /*reduire le champ*/
        if (f(x0)*f(x2) < 0)
/*appiquer la methode regula falsi*/
	regula (&x3, x0, x1, f(x0), f(x1),&itr);
        if (fabs(x3-x2) <= err)  //Trouver si |x3-x2|<erreur
            printf("Apres %d iterations, on trouve la racine = %6.4f\n", itr, x3);
    while (itr<maxitr);
    printf("La solution n'est pas converge ou il y a trop d'iterations.\n");

This snippet took 0.01 seconds to highlight.

Back to the Entry List or Home.

Delete this entry (admin only).