Kala te souhaite la bienvenueKalaMaths

Variables, boucles et conditions

🔴 Expert

Les énoncés sont gratuits, et les 2 premiers corrigés sont offerts. Les autres suivent l'accès à la famille « Algorithmique et Python ».

  1. 1

    Explique la différence de comportement entre une suite de « si » indépendants et une suite de « sinon si », à l'aide d'un exemple.

    Voir le corrigéoffert

    Avec des « si » indépendants, chaque test est évalué, même si un précédent a déjà réussi : plusieurs blocs peuvent donc s'exécuter.
    Avec des « sinon si », le parcours s'arrête au premier test réussi : un seul bloc s'exécute.
    Prenons une note de 15, avec deux tests : supérieure ou égale à 10, puis supérieure ou égale à 8. Écrits en « si » indépendants, les deux réussissent, et le programme affiche « admis » puis « rattrapage ».
    Écrits en « sinon si », seul le premier s'exécute. C'est presque toujours ce que l'on veut quand les cas s'excluent.

  2. 2

    Écris un programme qui détermine le plus petit entier n tel que 2 élevé à la puissance n dépasse 1000, puis déroule-le.

    Voir le corrigéoffert

    On ne connaît pas le nombre de tours à l'avance : il faut une boucle « tant que ».
    On pose n = 0 et p = 1, puis tant que p est inférieur ou égal à 1000, on fait p = p * 2 et n = n + 1.
    On déroule : p prend les valeurs 2, 4, 8, et ainsi de suite jusqu'à 512 avec n=9n = 9, puis 1024 avec n=10n = 10. Le test 1024⩽10001024 \leqslant 1000 est faux, on sort.
    La réponse est n=10n = 10, puisque 210=10242^{10} = 1024 dépasse 1000 alors que 29=5122^{9} = 512 ne le dépasse pas.

  3. 3

    Explique ce qu'est une variable booléenne servant de drapeau, et donne un exemple d'utilisation.

    🔒 Corrigé réservé aux abonnésS'abonner →
  4. 4

    Un programme doit afficher les entiers de 1 à 10 inclus. Un élève écrit : pour i dans range(1, 10). Explique l'erreur et donne deux corrections possibles.

    🔒 Corrigé réservé aux abonnésS'abonner →
  5. 5

    Compare le nombre d'opérations effectuées par une boucle simple de 100 tours et par deux boucles imbriquées de 100 tours chacune.

    🔒 Corrigé réservé aux abonnésS'abonner →
  6. 6

    Démontre que la boucle suivante se termine : n = 100, puis tant que n est strictement supérieur à 1, n = n // 2, où le symbole représente la division entière.

    🔒 Corrigé réservé aux abonnésS'abonner →
  7. 7

    Explique pourquoi il faut tester un programme sur des cas limites, et donne trois exemples de tels cas.

    🔒 Corrigé réservé aux abonnésS'abonner →
  8. 8

    On exécute : a = 5, b = 0, puis si b est différent de 0 et a divisé par b est supérieur à 2, afficher « grand ». Explique pourquoi ce programme ne provoque pas d'erreur.

    🔒 Corrigé réservé aux abonnésS'abonner →
  9. 9

    Explique comment repérer, dans un programme, une condition qui est toujours vraie ou toujours fausse, et pourquoi c'est un défaut.

    🔒 Corrigé réservé aux abonnésS'abonner →
  10. 10

    Explique pourquoi l'initialisation d'un accumulateur doit se faire avant la boucle, et décris ce qui se passe si elle est placée à l'intérieur.

    🔒 Corrigé réservé aux abonnésS'abonner →

Comment ça s'est passé ?

Retrouve tout dans Mon suivi.

Un mot qui coince ?

Variables, boucles et conditions : exercices niveau expert