base

hauteur

surface

répétition

$base =\frac{base +hauteur}{2}$
$hauteur = \frac{2}{base}$

↩

Problème : trouver deux nombres $A$ et $B$ tels que $A \times B = 2$
$A$ et $B$ seront obtenus avec une précision $p$

Entrer les valeurs initiales $A = 2$ et $B = 1$

Répéter
        Donner à $A$ la valeur moyenne de $A$ et $B$
        Donner à $B$ la valeur $\frac{2}{A}$
        Afficher $A$ et $B$

Jusqu'à ce que $A$ soit égal à $B$ à la précision $p$ souhaitée

↩

↩

↩

↩

↩

surface: 2
base: 1
hauteur: surface / base
O: (0, 0)
i: (1, 0)
j: (0, 1)
P_0, o, f, g, h, o_1 = Polygon(O, Translate[O, i], Translate[O, Vector[(base * i) + (surface * j)]], Translate[O, Vector[(surface * j)]], O)
bases = IterationList((x + surface / x) / 2, 1, 5)
hauteurs = Zip(surface / a, a, bases)
A = Zip(Point[{a, 0}], a, bases)
B = Zip(Point[{a, surface / a}], a, bases)
C = Zip(Point[{0, surface / a}], a, bases)
rects = Zip(Polygon[O, a, b, c], a, A, b, B, c, C)
rectangles = Sequence(Translate[rects(n), Vector[(-j) - ((2 * n) * j)]], n, 1, 6)
R_1: rectangles(1)
R_2: rectangles(2)
R_3: rectangles(3)
R_4: rectangles(4)
R_5: rectangles(5)
R_6: rectangles(6)
texte1: "base=" + (bases(1)) + "
hauteur=" + (hauteurs(1)) + ""
texte1_2: "base=" + (bases(2)) + "
hauteur=" + (hauteurs(2)) + ""
texte1_8: "base=" + (bases(3)) + "
hauteur=" + (hauteurs(3)) + ""
texte1_5: "base=" + (bases(4)) + "
hauteur=" + (hauteurs(4)) + ""
texte1_{13}: "base=" + (bases(5)) + "
hauteur=" + (hauteurs(5)) + ""
texte1_{22}: "base=" + (bases(6)) + "
hauteur=" + (hauteurs(6)) + ""