# -*- coding: utf-8 -*- """ Created on Thu Dec 18 10:50:10 2014 @author: grivet Exercice 5-1b : Résolution d'une équation non-linéaire par regula falsi """ from pylab import * TOL = 1E-6 def fn(x): return x - 0.2*sin(x) - 0.5 xg = float(input("abscisse gauche: ")) xd = float(input("abscisse droite: ")) fg = fn(xg); fd = fn(xd) fm = (fg+fd)/2.0 while abs(fm) > TOL: xm = xg - fg*(xg-xd)/(fg-fd) fm = fn(xm) if fm*fg < 0: xd = xm; fd = fm else: xg = xm; fg = fm xm = xg - fg*(xd-xg)/(fd-fg); print ("\n racine: %12.6f valeur de la fonction! %12.6f\n" %(xm, fn(xm)))