NSI (terminale) · Chapitre 15 · Exercice d'entraînement
Trier et compter comme Hollerith
Histoire de l'informatique · Avant l'ordinateur : algorithmes, machines et données · niveau 2
Énoncé
Trier et compter comme Hollerith. La machine de Hollerith, utilisée pour le recensement américain de 1890, compte et trie automatiquement des cartes perforées, une carte par personne. On en simule le principe avec une convention simplifiée et fictive : une carte est une liste de entiers, la position (ligne) perforée dans chacune des colonnes , et .
- colonne : tranche d'âge (ligne pour un âge de à ans) ;
- colonne : ligne pour une femme, ligne pour un homme ;
- colonne : ligne pour une personne née dans le pays, ligne pour une personne née à l'étranger.
cartes = [[3, 1, 0], [0, 2, 0], [4, 2, 1], [3, 2, 0],
[1, 1, 1], [0, 1, 0], [3, 1, 1], [6, 2, 0]]
- Décrire en français la première carte.
- Écrire une fonction
compter(cartes, colonne)qui renvoie un dictionnaire associant à chaque ligne perforée dans cette colonne le nombre de cartes concernées (les compteurs de la machine). - Écrire une fonction
trier(cartes, colonne)qui répartit les cartes dans cases selon la ligne perforée dans la colonne (la trieuse), et renvoie la liste des cases. - Comment obtenir, avec ces deux seules opérations, le nombre de femmes nées à l'étranger ?
Un exercice à chercher : son corrigé n'est pas publié. Sur Adloun, le tuteur guide par questions, sans donner la réponse.