Adloun

NSI (première) · Chapitre 1 · Exercice de TD

Un entier s'écrit avec k chiffres 1 et rien d'autre en base b (par…

Représenter les entiers · Écrire un nombre dans une base · niveau 2

Énoncé

Un entier s'écrit avec chiffres et rien d'autre en base (par exemple , ou ). Montrer qu'il vaut , puis vérifier cette formule sur machine pour toutes les bases de à et tous les de à .

Corrigé

La démonstration. Par définition de l'écriture en base , ce nombre vaut

somme des termes d'une suite géométrique de raison .

La vérification. On ne vérifie pas un cas : on les vérifie tous, ce qui est précisément ce que la machine sait faire.


def repunit(k, b):
    """Valeur de l'entier écrit avec k chiffres 1 en base b."""
    return (b**k - 1) // (b - 1)

for b in range(2, 17):
    for k in range(1, 11):
        assert depuis_base("1" * k, b) == repunit(k, b)

Aucune assertion ne se déclenche : cas passent.

Contrôle : , donne , le plus grand entier sur un octet — c'est exactement la proposition « capacité de bits » du cours. Et , donne .

100 % gratuit

Essaie le suivant avec le tuteur

Faire l'exercice suivant avec le tuteur

Sans compte : le cours, 2 minutes de podcast et de vidéo et un exercice avec le tuteur. Pour tout le reste : inscription gratuite en 30 secondes, sans carte bancaire.

Le cours du chapitre · Tous les exercices du chapitre

Exercice suivant avec le tuteur →