Quand le code rencontre les cellules
Ce chapitre a 5 cellules et écrit 9 promesses. Dans chacune de ses quatre éditions, ses cellules ont été exécutées dans un processus neuf le 2026-10-08 20:15 : English, 5 cellules exécutées, 9 promesses tenues; Français, 5 cellules exécutées, 9 promesses tenues; العربية, 5 cellules exécutées, 9 promesses tenues; Hausa, 5 cellules exécutées, 9 promesses tenues. Les quatre éditions font les mêmes promesses, cellule pour cellule. Aucune édition ne stocke de sortie.
Le garde
Le garde du cours est course_narrated.ring(s'ouvre dans un nouvel onglet) : il exécute chaque chapitre dans les quatre langues, compare les promesses d'une édition à l'autre, et fait prouver chaque exercice sur ses mauvaises et ses bonnes réponses. Cette page a posé les mêmes questions aux mêmes objets, dans un seul processus à l'intérieur de la bibliothèque, au commit 0e72e2e2c. Pour prouver ce chapitre seul, depuis votre copie du dépôt :
cd libraries/stzlib/base/test/education # exécutez course_narrated avec le moteur d'exécution du dépôt, pour ce chapitre : # course_narrated when-code-meets-cells
exécuté le 2026-10-08 20:15 dans la bibliothèque au commit 4a184e6f0, en 246.4 s pour tout le livre · Les quatre éditions du chapitre : English(s'ouvre dans un nouvel onglet) · Français(s'ouvre dans un nouvel onglet) · العربية(s'ouvre dans un nouvel onglet) · Hausa(s'ouvre dans un nouvel onglet)
Le lecteur ne stocke aucune sortie, par la loi du cours ; cette page est le compte rendu d'une exécution, faite pour elle. Le code des cellules est celui de l'édition anglaise ; les titres viennent de l'édition française. Les quatre éditions font les mêmes promesses, cellule pour cellule.
Les cellules, exécutées
Cellule 1 · 1. Construire la table, et la regarder
oT = new stzTable([ [ :DISH, :PRICE, :ORDERS ], [ "tea", 200, 6 ], [ "rice", 500, 3 ], [ "fish", 900, 2 ] ]) oT.Show()
╭──────┬───────┬────────╮ │ Dish │ Price │ Orders │ ├──────┼───────┼────────┤ │ tea │ 200 │ 6 │ │ rice │ 500 │ 3 │ │ fish │ 900 │ 2 │ ╰──────┴───────┴────────╯
exécutée : cette cellule n'écrit aucune promesse
Cette cellule dans le chapitre : English(s'ouvre dans un nouvel onglet) · Français(s'ouvre dans un nouvel onglet) · العربية(s'ouvre dans un nouvel onglet) · Hausa(s'ouvre dans un nouvel onglet)
Cellule 2 · 2. Sa forme
? oT.NumberOfRows() #--> 3 ? oT.NumberOfCols() #--> 3 ? @@( oT.ColNames() ) #--> [ "dish", "price", "orders" ]
3 3 [ "dish", "price", "orders" ]
exécutée : la promesse est tenue · dans les quatre éditions
Cette cellule dans le chapitre : English(s'ouvre dans un nouvel onglet) · Français(s'ouvre dans un nouvel onglet) · العربية(s'ouvre dans un nouvel onglet) · Hausa(s'ouvre dans un nouvel onglet)
Cellule 3 · 3. Une colonne, une ligne
? @@( oT.Col(:PRICE) ) #--> [ 200, 500, 900 ] ? @@( oT.Row(2) ) #--> [ "rice", 500, 3 ]
[ 200, 500, 900 ] [ "rice", 500, 3 ]
exécutée : la promesse est tenue · dans les quatre éditions
Cette cellule dans le chapitre : English(s'ouvre dans un nouvel onglet) · Français(s'ouvre dans un nouvel onglet) · العربية(s'ouvre dans un nouvel onglet) · Hausa(s'ouvre dans un nouvel onglet)
Cellule 4 · 4. Une cellule, et où se trouve une valeur
? oT.Cell(:PRICE, 3) #--> 900 ? @@( oT.FindInCol(:DISH, "fish") ) #--> [ 3 ]
900 [ 3 ]
exécutée : la promesse est tenue · dans les quatre éditions
Cette cellule dans le chapitre : English(s'ouvre dans un nouvel onglet) · Français(s'ouvre dans un nouvel onglet) · العربية(s'ouvre dans un nouvel onglet) · Hausa(s'ouvre dans un nouvel onglet)
Cellule 5 · 5. Une colonne est une liste : posez-lui les questions des listes
? StzListQ(oT.Col(:ORDERS)).Sum()
#--> 11
? @@( StzListQ(oT.Col(:PRICE)).FindW("{ @item > 400 }") )
#--> [ 2, 3 ]11 [ 2, 3 ]
exécutée : la promesse est tenue · dans les quatre éditions
Cette cellule dans le chapitre : English(s'ouvre dans un nouvel onglet) · Français(s'ouvre dans un nouvel onglet) · العربية(s'ouvre dans un nouvel onglet) · Hausa(s'ouvre dans un nouvel onglet)
Les exercices
Chaque exercice s'éprouve lui-même : ses mauvaises réponses sont refusées et ses bonnes acceptées.
ex-10-01 · Exercice 10.1 · Le menu
2 mauvaises réponses refusées sur 2, 2 bonnes acceptées sur 2
01-the-whole-row.ring refusée · 02-rows-not-orders.ring refusée · 01-cell-and-sum.ring acceptée · 02-by-position.ring acceptée

