Compter les entiers pairs
Boucle à sentinelle (-1) et pourcentage
Lire une liste d'entiers terminée par -1, puis afficher le nombre d'entiers pairs et leur pourcentage parmi les entiers donnés.
1Procédure ComptePairs()2 nbPairs ← 03 nbTotal ← 04 Lire(n)5 TantQue n ≠ -1 faire6 nbTotal ← nbTotal + 17 Si n mod 2 = 0 alors8 nbPairs ← nbPairs + 19 FinSi10 Lire(n)11 FinTantQue12 pourcentage ← nbPairs × 100 / nbTotal13 Écrire(nbPairs, pourcentage)14FINLa valeur -1 est une sentinelle : elle arrête la saisie sans être comptée. Le test nbTotal > 0 évite la division par zéro, et on multiplie par 100 avant de diviser pour garder la précision.
Six actions paramétrées
Somme · factorielle · divisibilité · division entière · voyelle · permutation
Écrire les actions paramétrées résolvant : somme de deux entiers, factorielle, « A divise B ? », quotient & reste de la division entière, « caractère voyelle ? », et permutation de deux réels. Choisissez un onglet.
1Fonction Factorielle(n) : entier2 f ← 13 Pour i de 2 à n faire4 f ← f × i5 FinPour6 Factorielle ← f7FINQuand un seul résultat sort, une fonction suffit (somme, factorielle…). Quand plusieurs sortent (quotient et reste, ou l'échange de deux variables), il faut une procédure avec VAR.
Carré parfait
Chercher i tel que i × i = x, sans racine carrée
Vérifier si un entier x est un carré parfait avec seulement les opérateurs de base, et renvoyer sa racine le cas échéant. Indication : x est un carré parfait s'il existe un entier i tel que x = i × i.
1Fonction EstCarreParfait(x) : booléen2 trouve ← Faux3 i ← 04 TantQue i×i ≤ x ET NON trouve faire5 Si i×i = x alors6 trouve ← Vrai7 FinSi8 i ← i + 19 FinTantQue10 EstCarreParfait ← trouve11FINOn fait croître i tant que i×i ≤ x. La procédure renvoie deux informations (booléen et racine) via VAR ; la fonction n'en renvoie qu'une — exactement la définition du cours.
Table de multiplication & boucle Répéter
Réutiliser des actions : TableMultiplication + EstOui
Écrire une action qui affiche la table de multiplication (1 à 9) d'un entier, puis un algorithme qui réaffiche des tables tant que l'utilisateur le souhaite (réponse « o/O »).
Répéter … TantQue(condition) exécute le corps au moins une fois.
On compose deux actions déjà écrites. La structure Répéter … TantQue(EstOui(reponse)) garantit au moins un affichage, puis recommence tant que la réponse est « oui ».
Décimal → binaire
Méthode des restes successifs de la division par 2
Écrire une fonction BIN qui convertit un entier positif du décimal vers le binaire — renvoyé comme un entier dont les chiffres lus en décimal forment la représentation binaire.
1Fonction BIN(n) : entier2 binaire ← 0 ; puissance ← 13 TantQue n > 0 faire4 reste ← n mod 25 binaire ← binaire + reste × puissance6 puissance ← puissance × 107 n ← n div 28 FinTantQue9 BIN ← binaire10FINLes restes sortent du bit de poids faible vers le poids fort : on les empile donc à gauche.
On divise par 2 et on garde les restes. Comme ils sortent du bit de poids faible au poids fort, on les place de droite à gauche. puissance (1, 10, 100…) sert à empiler chaque chiffre binaire au bon rang dans l'entier résultat.