# -*- coding: utf-8 -*-
"""
Module 'tabuler_m''

Écrire une fonction maFonction qui retourne 𝑓(𝑥)=2𝑥3+𝑥−5.

Écrire une procédure tabuler avec quatre paramètres : fonction, borneInf, borneSup et nbPas (où borneInf < borneSup et nbPas >= 2). Cette procédure affiche les valeurs résultant de l'appel à fonction, avec un 𝑥
de borneInf à borneSup, tous les nbPas. 
"""

# Définition de fonction ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
def maFonction(x):
    return 2 * x ** 3 + x - 5


def tabuler(fonction, borneInf, borneSup, nbPas):
    """
    Tabule les valeurs de <fonction>.
    """
    h = (borneSup - borneInf) / float(nbPas)  # incrément de tabulation
    x = borneInf
    print()
    while x <= borneSup:
        y = fonction(x)
        print(f"f({x:.2f}) = {y:.3f}")
        x += h
