[{"data":1,"prerenderedAt":7081},["ShallowReactive",2],{"navigation":3,"chapter-cours-snt-2nde\u002Fsh-prog-notions":585,"chapter-index-snt-2nde\u002Fsh-prog-notions":4961,"chapter-memo-snt-2nde\u002Fsh-prog-notions":5098},[4,224,440],{"title":5,"path":6,"stem":7,"children":8},"SNT — Seconde","\u002Fsnt-2nde","0.snt-2nde\u002F0.index",[9,10,14,36,66,92,118,144,162,184,206],{"title":5,"path":6,"stem":7},{"title":11,"path":12,"stem":13},"REVIEW pédagogique — SNT 2nde","\u002Fsnt-2nde\u002Freview","0.snt-2nde\u002FREVIEW",{"title":15,"path":16,"stem":17,"children":18},"Internet","\u002Fsnt-2nde\u002Fsa-internet","0.snt-2nde\u002Fsa-internet\u002F0.index",[19,20,24,28,32],{"title":15,"path":16,"stem":17},{"title":21,"path":22,"stem":23},"Adresses symboliques et DNS","\u002Fsnt-2nde\u002Fsa-internet\u002Fadresses-dns","0.snt-2nde\u002Fsa-internet\u002F1.adresses-dns",{"title":25,"path":26,"stem":27},"Internet et les réseaux physiques","\u002Fsnt-2nde\u002Fsa-internet\u002Freseaux-physiques","0.snt-2nde\u002Fsa-internet\u002F2.reseaux-physiques",{"title":29,"path":30,"stem":31},"Protocoles TCP\u002FIP et routage des paquets","\u002Fsnt-2nde\u002Fsa-internet\u002Ftcp-ip-routage","0.snt-2nde\u002Fsa-internet\u002F3.tcp-ip-routage",{"title":33,"path":34,"stem":35},"Réseaux pair-à-pair","\u002Fsnt-2nde\u002Fsa-internet\u002Fpair-a-pair","0.snt-2nde\u002Fsa-internet\u002F4.pair-a-pair",{"title":37,"path":38,"stem":39,"children":40},"Le Web","\u002Fsnt-2nde\u002Fsb-web","0.snt-2nde\u002Fsb-web\u002F0.index",[41,42,46,50,54,58,62],{"title":37,"path":38,"stem":39},{"title":43,"path":44,"stem":45},"Histoire du Web","\u002Fsnt-2nde\u002Fsb-web\u002Fhistoire-web","0.snt-2nde\u002Fsb-web\u002F1.histoire-web",{"title":47,"path":48,"stem":49},"URL et hypertexte","\u002Fsnt-2nde\u002Fsb-web\u002Furl-hypertexte","0.snt-2nde\u002Fsb-web\u002F2.url-hypertexte",{"title":51,"path":52,"stem":53},"HTML et CSS — le contenu et la présentation","\u002Fsnt-2nde\u002Fsb-web\u002Fhtml-css","0.snt-2nde\u002Fsb-web\u002F3.html-css",{"title":55,"path":56,"stem":57},"Client-serveur et requêtes HTTP","\u002Fsnt-2nde\u002Fsb-web\u002Fclient-serveur-http","0.snt-2nde\u002Fsb-web\u002F4.client-serveur-http",{"title":59,"path":60,"stem":61},"Moteurs de recherche","\u002Fsnt-2nde\u002Fsb-web\u002Fmoteurs-recherche","0.snt-2nde\u002Fsb-web\u002F5.moteurs-recherche",{"title":63,"path":64,"stem":65},"Sécurité du navigateur et notions juridiques","\u002Fsnt-2nde\u002Fsb-web\u002Fsecurite-droits","0.snt-2nde\u002Fsb-web\u002F6.securite-droits",{"title":67,"path":68,"stem":69,"children":70},"Les réseaux sociaux","\u002Fsnt-2nde\u002Fsc-reseaux-sociaux","0.snt-2nde\u002Fsc-reseaux-sociaux\u002F0.index",[71,72,76,80,84,88],{"title":67,"path":68,"stem":69},{"title":73,"path":74,"stem":75},"Panorama des réseaux sociaux","\u002Fsnt-2nde\u002Fsc-reseaux-sociaux\u002Fpanorama-rs","0.snt-2nde\u002Fsc-reseaux-sociaux\u002F1.panorama-rs",{"title":77,"path":78,"stem":79},"Identité numérique et authentification","\u002Fsnt-2nde\u002Fsc-reseaux-sociaux\u002Fidentite-numerique","0.snt-2nde\u002Fsc-reseaux-sociaux\u002F2.identite-numerique",{"title":81,"path":82,"stem":83},"Le modèle économique des réseaux sociaux","\u002Fsnt-2nde\u002Fsc-reseaux-sociaux\u002Fmodele-economique","0.snt-2nde\u002Fsc-reseaux-sociaux\u002F3.modele-economique",{"title":85,"path":86,"stem":87},"Petit monde et graphes","\u002Fsnt-2nde\u002Fsc-reseaux-sociaux\u002Fpetit-monde-graphes","0.snt-2nde\u002Fsc-reseaux-sociaux\u002F4.petit-monde-graphes",{"title":89,"path":90,"stem":91},"La cyberviolence","\u002Fsnt-2nde\u002Fsc-reseaux-sociaux\u002Fcyberviolence","0.snt-2nde\u002Fsc-reseaux-sociaux\u002F5.cyberviolence",{"title":93,"path":94,"stem":95,"children":96},"Les données structurées et leur traitement","\u002Fsnt-2nde\u002Fsd-donnees-structurees","0.snt-2nde\u002Fsd-donnees-structurees\u002F0.index",[97,98,102,106,110,114],{"title":93,"path":94,"stem":95},{"title":99,"path":100,"stem":101},"Données et formats","\u002Fsnt-2nde\u002Fsd-donnees-structurees\u002Fdonnees-formats","0.snt-2nde\u002Fsd-donnees-structurees\u002F1.donnees-formats",{"title":103,"path":104,"stem":105},"Données structurées","\u002Fsnt-2nde\u002Fsd-donnees-structurees\u002Fdonnees-structurees","0.snt-2nde\u002Fsd-donnees-structurees\u002F2.donnees-structurees",{"title":107,"path":108,"stem":109},"Métadonnées","\u002Fsnt-2nde\u002Fsd-donnees-structurees\u002Fmetadonnees","0.snt-2nde\u002Fsd-donnees-structurees\u002F3.metadonnees",{"title":111,"path":112,"stem":113},"Traitement de tables","\u002Fsnt-2nde\u002Fsd-donnees-structurees\u002Ftraitement-tables","0.snt-2nde\u002Fsd-donnees-structurees\u002F4.traitement-tables",{"title":115,"path":116,"stem":117},"Le cloud","\u002Fsnt-2nde\u002Fsd-donnees-structurees\u002Fcloud","0.snt-2nde\u002Fsd-donnees-structurees\u002F5.cloud",{"title":119,"path":120,"stem":121,"children":122},"Localisation, cartographie et mobilité","\u002Fsnt-2nde\u002Fse-localisation-cartographie","0.snt-2nde\u002Fse-localisation-cartographie\u002F0.index",[123,124,128,132,136,140],{"title":119,"path":120,"stem":121},{"title":125,"path":126,"stem":127},"GPS et Galileo — se situer grâce aux satellites","\u002Fsnt-2nde\u002Fse-localisation-cartographie\u002Fgps-galileo","0.snt-2nde\u002Fse-localisation-cartographie\u002F1.gps-galileo",{"title":129,"path":130,"stem":131},"Décoder une trame NMEA","\u002Fsnt-2nde\u002Fse-localisation-cartographie\u002Ftrame-nmea","0.snt-2nde\u002Fse-localisation-cartographie\u002F2.trame-nmea",{"title":133,"path":134,"stem":135},"Cartes numériques — GeoPortail et OpenStreetMap","\u002Fsnt-2nde\u002Fse-localisation-cartographie\u002Fcartes-numeriques","0.snt-2nde\u002Fse-localisation-cartographie\u002F3.cartes-numeriques",{"title":137,"path":138,"stem":139},"Itinéraires et graphes","\u002Fsnt-2nde\u002Fse-localisation-cartographie\u002Fitineraires-graphes","0.snt-2nde\u002Fse-localisation-cartographie\u002F4.itineraires-graphes",{"title":141,"path":142,"stem":143},"Confidentialité de la position","\u002Fsnt-2nde\u002Fse-localisation-cartographie\u002Fconfidentialite-position","0.snt-2nde\u002Fse-localisation-cartographie\u002F5.confidentialite-position",{"title":145,"path":146,"stem":147,"children":148},"Informatique embarquée et objets connectés","\u002Fsnt-2nde\u002Fsf-info-embarquee","0.snt-2nde\u002Fsf-info-embarquee\u002F0.index",[149,150,154,158],{"title":145,"path":146,"stem":147},{"title":151,"path":152,"stem":153},"Systèmes informatiques embarqués","\u002Fsnt-2nde\u002Fsf-info-embarquee\u002Fsystemes-embarques","0.snt-2nde\u002Fsf-info-embarquee\u002F1.systemes-embarques",{"title":155,"path":156,"stem":157},"Capteurs et actionneurs","\u002Fsnt-2nde\u002Fsf-info-embarquee\u002Fcapteurs-actionneurs","0.snt-2nde\u002Fsf-info-embarquee\u002F2.capteurs-actionneurs",{"title":159,"path":160,"stem":161},"IHM et objets connectés","\u002Fsnt-2nde\u002Fsf-info-embarquee\u002Fihm-objet-connecte","0.snt-2nde\u002Fsf-info-embarquee\u002F3.ihm-objet-connecte",{"title":163,"path":164,"stem":165,"children":166},"Photographie numérique","\u002Fsnt-2nde\u002Fsg-photo-numerique","0.snt-2nde\u002Fsg-photo-numerique\u002F0.index",[167,168,172,176,180],{"title":163,"path":164,"stem":165},{"title":169,"path":170,"stem":171},"Photosites, pixels et résolution","\u002Fsnt-2nde\u002Fsg-photo-numerique\u002Fpixels-resolution","0.snt-2nde\u002Fsg-photo-numerique\u002F1.pixels-resolution",{"title":173,"path":174,"stem":175},"Les algorithmes de l'appareil photo","\u002Fsnt-2nde\u002Fsg-photo-numerique\u002Falgorithmes-photo","0.snt-2nde\u002Fsg-photo-numerique\u002F2.algorithmes-photo",{"title":177,"path":178,"stem":179},"Les métadonnées EXIF","\u002Fsnt-2nde\u002Fsg-photo-numerique\u002Fmetadonnees-exif","0.snt-2nde\u002Fsg-photo-numerique\u002F3.metadonnees-exif",{"title":181,"path":182,"stem":183},"Traiter une image en Python","\u002Fsnt-2nde\u002Fsg-photo-numerique\u002Ftraitement-rgb","0.snt-2nde\u002Fsg-photo-numerique\u002F4.traitement-rgb",{"title":185,"path":186,"stem":187,"children":188},"Notions transversales de programmation","\u002Fsnt-2nde\u002Fsh-prog-notions","0.snt-2nde\u002Fsh-prog-notions\u002F0.index",[189,190,194,198,202],{"title":185,"path":186,"stem":187},{"title":191,"path":192,"stem":193},"Séquences d'instructions et variables","\u002Fsnt-2nde\u002Fsh-prog-notions\u002Fsequences-affectations","0.snt-2nde\u002Fsh-prog-notions\u002F1.sequences-affectations",{"title":195,"path":196,"stem":197},"Instructions conditionnelles","\u002Fsnt-2nde\u002Fsh-prog-notions\u002Fconditionnelles","0.snt-2nde\u002Fsh-prog-notions\u002F2.conditionnelles",{"title":199,"path":200,"stem":201},"Boucles bornées et non bornées","\u002Fsnt-2nde\u002Fsh-prog-notions\u002Fboucles","0.snt-2nde\u002Fsh-prog-notions\u002F3.boucles",{"title":203,"path":204,"stem":205},"Définitions et appels de fonctions","\u002Fsnt-2nde\u002Fsh-prog-notions\u002Ffonctions","0.snt-2nde\u002Fsh-prog-notions\u002F4.fonctions",{"title":207,"path":208,"stem":209,"children":210},"Démo des widgets MDC","\u002Fsnt-2nde\u002Fzz-demo-widgets","0.snt-2nde\u002Fzz-demo-widgets\u002F0.index",[211,212,216,220],{"title":207,"path":208,"stem":209},{"title":213,"path":214,"stem":215},"Démo statique — callouts, code, BO, illustration","\u002Fsnt-2nde\u002Fzz-demo-widgets\u002Fstatique","0.snt-2nde\u002Fzz-demo-widgets\u002F1.statique",{"title":217,"path":218,"stem":219},"Démo interactive — self-eval et python-snippet","\u002Fsnt-2nde\u002Fzz-demo-widgets\u002Finteractif","0.snt-2nde\u002Fzz-demo-widgets\u002F2.interactif",{"title":221,"path":222,"stem":223},"Démo · 14 widgets de manipulation NSI","\u002Fsnt-2nde\u002Fzz-demo-widgets\u002Fwidgets-manipulation","0.snt-2nde\u002Fzz-demo-widgets\u002F3.widgets-manipulation",{"title":225,"path":226,"stem":227,"children":228},"NSI — Première","\u002Fnsi-1ere","1.nsi-1ere\u002F0.index",[229,230,234,256,282,304,328,354,380,410],{"title":225,"path":226,"stem":227},{"title":231,"path":232,"stem":233},"Relecture pédagogique — 8 chapitres NSI 1ère (PA → PH)","\u002Fnsi-1ere\u002Freview","1.nsi-1ere\u002FREVIEW",{"title":235,"path":236,"stem":237,"children":238},"Histoire de l'informatique","\u002Fnsi-1ere\u002Fpa-histoire-info","1.nsi-1ere\u002Fpa-histoire-info\u002F0.index",[239,240,244,248,252],{"title":235,"path":236,"stem":237},{"title":241,"path":242,"stem":243},"De la préantiquité aux machines à calculer","\u002Fnsi-1ere\u002Fpa-histoire-info\u002Fpreantiquite-aux-machines","1.nsi-1ere\u002Fpa-histoire-info\u002F1.preantiquite-aux-machines",{"title":245,"path":246,"stem":247},"La machine universelle (1930-1950)","\u002Fnsi-1ere\u002Fpa-histoire-info\u002Fmachine-universelle","1.nsi-1ere\u002Fpa-histoire-info\u002F2.machine-universelle",{"title":249,"path":250,"stem":251},"Les ordinateurs modernes (1947-1990)","\u002Fnsi-1ere\u002Fpa-histoire-info\u002Fordinateurs-modernes","1.nsi-1ere\u002Fpa-histoire-info\u002F3.ordinateurs-modernes",{"title":253,"path":254,"stem":255},"Réseaux, Web et IA (1969 à aujourd'hui)","\u002Fnsi-1ere\u002Fpa-histoire-info\u002Freseaux-et-web","1.nsi-1ere\u002Fpa-histoire-info\u002F4.reseaux-et-web",{"title":257,"path":258,"stem":259,"children":260},"Représentation des données — types et valeurs","\u002Fnsi-1ere\u002Fpb-types-valeurs","1.nsi-1ere\u002Fpb-types-valeurs\u002F0.index",[261,262,266,270,274,278],{"title":257,"path":258,"stem":259},{"title":263,"path":264,"stem":265},"Bases de numération et entiers positifs","\u002Fnsi-1ere\u002Fpb-types-valeurs\u002Fbases-entiers-positifs","1.nsi-1ere\u002Fpb-types-valeurs\u002F1.bases-entiers-positifs",{"title":267,"path":268,"stem":269},"Entiers relatifs et complément à deux","\u002Fnsi-1ere\u002Fpb-types-valeurs\u002Fentiers-relatifs","1.nsi-1ere\u002Fpb-types-valeurs\u002F2.entiers-relatifs",{"title":271,"path":272,"stem":273},"Nombres flottants et virgule flottante","\u002Fnsi-1ere\u002Fpb-types-valeurs\u002Fflottants","1.nsi-1ere\u002Fpb-types-valeurs\u002F3.flottants",{"title":275,"path":276,"stem":277},"Textes et encodages — ASCII, ISO-8859-1, Unicode","\u002Fnsi-1ere\u002Fpb-types-valeurs\u002Ftextes-encodages","1.nsi-1ere\u002Fpb-types-valeurs\u002F4.textes-encodages",{"title":279,"path":280,"stem":281},"Valeurs booléennes et opérateurs logiques","\u002Fnsi-1ere\u002Fpb-types-valeurs\u002Fbooleens","1.nsi-1ere\u002Fpb-types-valeurs\u002F5.booleens",{"title":283,"path":284,"stem":285,"children":286},"Représentation des données : types construits","\u002Fnsi-1ere\u002Fpc-types-construits","1.nsi-1ere\u002Fpc-types-construits\u002F0.index",[287,288,292,296,300],{"title":283,"path":284,"stem":285},{"title":289,"path":290,"stem":291},"Tableaux et listes","\u002Fnsi-1ere\u002Fpc-types-construits\u002Ftableaux-listes","1.nsi-1ere\u002Fpc-types-construits\u002F1.tableaux-listes",{"title":293,"path":294,"stem":295},"Listes en compréhension","\u002Fnsi-1ere\u002Fpc-types-construits\u002Fcomprehension","1.nsi-1ere\u002Fpc-types-construits\u002F2.comprehension",{"title":297,"path":298,"stem":299},"Tuples et p-uplets nommés","\u002Fnsi-1ere\u002Fpc-types-construits\u002Ftuples","1.nsi-1ere\u002Fpc-types-construits\u002F3.tuples",{"title":301,"path":302,"stem":303},"Dictionnaires","\u002Fnsi-1ere\u002Fpc-types-construits\u002Fdictionnaires","1.nsi-1ere\u002Fpc-types-construits\u002F4.dictionnaires",{"title":305,"path":306,"stem":307,"children":308},"Traitement de données en tables","\u002Fnsi-1ere\u002Fpd-tables-donnees","1.nsi-1ere\u002Fpd-tables-donnees\u002F0.index",[309,310,314,318,322],{"title":305,"path":306,"stem":307},{"title":311,"path":312,"stem":313},"Tables et CSV","\u002Fnsi-1ere\u002Fpd-tables-donnees\u002Ftables-csv","1.nsi-1ere\u002Fpd-tables-donnees\u002F1.tables-csv",{"title":315,"path":316,"stem":317},"Recherche et filtrage","\u002Fnsi-1ere\u002Fpd-tables-donnees\u002Frecherche","1.nsi-1ere\u002Fpd-tables-donnees\u002F2.recherche",{"title":319,"path":320,"stem":321},"Trier une table","\u002Fnsi-1ere\u002Fpd-tables-donnees\u002Ftri","1.nsi-1ere\u002Fpd-tables-donnees\u002F3.tri",{"title":323,"path":324,"stem":325,"children":326},"Fusion et indexation","\u002Fnsi-1ere\u002Fpd-tables-donnees\u002Ffusion-indexation","1.nsi-1ere\u002Fpd-tables-donnees\u002F4.fusion-indexation",[327],{"title":323,"path":324,"stem":325},{"title":329,"path":330,"stem":331,"children":332},"IHM sur le Web","\u002Fnsi-1ere\u002Fpe-ihm-web","1.nsi-1ere\u002Fpe-ihm-web\u002F0.index",[333,334,338,342,346,350],{"title":329,"path":330,"stem":331},{"title":335,"path":336,"stem":337},"HTML et CSS — rappel de structure","\u002Fnsi-1ere\u002Fpe-ihm-web\u002Fhtml-css-bases","1.nsi-1ere\u002Fpe-ihm-web\u002F1.html-css-bases",{"title":339,"path":340,"stem":341},"Formulaires HTML","\u002Fnsi-1ere\u002Fpe-ihm-web\u002Fformulaires","1.nsi-1ere\u002Fpe-ihm-web\u002F2.formulaires",{"title":343,"path":344,"stem":345},"Événements JavaScript","\u002Fnsi-1ere\u002Fpe-ihm-web\u002Fevenements-js","1.nsi-1ere\u002Fpe-ihm-web\u002F3.evenements-js",{"title":347,"path":348,"stem":349},"Manipulation du DOM","\u002Fnsi-1ere\u002Fpe-ihm-web\u002Fdom-interaction","1.nsi-1ere\u002Fpe-ihm-web\u002F4.dom-interaction",{"title":351,"path":352,"stem":353},"Client, serveur et HTTP","\u002Fnsi-1ere\u002Fpe-ihm-web\u002Fclient-serveur-http","1.nsi-1ere\u002Fpe-ihm-web\u002F5.client-serveur-http",{"title":355,"path":356,"stem":357,"children":358},"Architectures matérielles et systèmes d'exploitation","\u002Fnsi-1ere\u002Fpf-archi-os","1.nsi-1ere\u002Fpf-archi-os\u002F0.index",[359,360,364,368,372,376],{"title":355,"path":356,"stem":357},{"title":361,"path":362,"stem":363},"Le modèle de von Neumann","\u002Fnsi-1ere\u002Fpf-archi-os\u002Fvon-neumann","1.nsi-1ere\u002Fpf-archi-os\u002F1.von-neumann",{"title":365,"path":366,"stem":367},"Périphériques et interface homme-machine","\u002Fnsi-1ere\u002Fpf-archi-os\u002Fperipheriques-ihm","1.nsi-1ere\u002Fpf-archi-os\u002F2.peripheriques-ihm",{"title":369,"path":370,"stem":371},"Les systèmes d'exploitation","\u002Fnsi-1ere\u002Fpf-archi-os\u002Fsystemes-exploitation","1.nsi-1ere\u002Fpf-archi-os\u002F3.systemes-exploitation",{"title":373,"path":374,"stem":375},"Linux et le shell","\u002Fnsi-1ere\u002Fpf-archi-os\u002Flinux-shell","1.nsi-1ere\u002Fpf-archi-os\u002F4.linux-shell",{"title":377,"path":378,"stem":379},"Réseaux et protocoles","\u002Fnsi-1ere\u002Fpf-archi-os\u002Freseaux","1.nsi-1ere\u002Fpf-archi-os\u002F5.reseaux",{"title":381,"path":382,"stem":383,"children":384},"Langages et programmation","\u002Fnsi-1ere\u002Fpg-langages-prog","1.nsi-1ere\u002Fpg-langages-prog\u002F0.index",[385,386,390,394,398,402,406],{"title":381,"path":382,"stem":383},{"title":387,"path":388,"stem":389},"Diversité et unité des langages de programmation","\u002Fnsi-1ere\u002Fpg-langages-prog\u002Fdiversite-langages","1.nsi-1ere\u002Fpg-langages-prog\u002F1.diversite-langages",{"title":391,"path":392,"stem":393},"Constructions élémentaires","\u002Fnsi-1ere\u002Fpg-langages-prog\u002Fconstructions-elementaires","1.nsi-1ere\u002Fpg-langages-prog\u002F2.constructions-elementaires",{"title":395,"path":396,"stem":397},"Fonctions","\u002Fnsi-1ere\u002Fpg-langages-prog\u002Ffonctions","1.nsi-1ere\u002Fpg-langages-prog\u002F3.fonctions",{"title":399,"path":400,"stem":401},"Spécification d'une fonction","\u002Fnsi-1ere\u002Fpg-langages-prog\u002Fspecification","1.nsi-1ere\u002Fpg-langages-prog\u002F4.specification",{"title":403,"path":404,"stem":405},"Mise au point des programmes","\u002Fnsi-1ere\u002Fpg-langages-prog\u002Fmise-au-point","1.nsi-1ere\u002Fpg-langages-prog\u002F5.mise-au-point",{"title":407,"path":408,"stem":409},"Utilisation de bibliothèques","\u002Fnsi-1ere\u002Fpg-langages-prog\u002Fbibliotheques","1.nsi-1ere\u002Fpg-langages-prog\u002F6.bibliotheques",{"title":411,"path":412,"stem":413,"children":414},"Algorithmique","\u002Fnsi-1ere\u002Fph-algorithmique","1.nsi-1ere\u002Fph-algorithmique\u002F0.index",[415,416,420,424,428,432,436],{"title":411,"path":412,"stem":413},{"title":417,"path":418,"stem":419},"Parcours séquentiel d'un tableau","\u002Fnsi-1ere\u002Fph-algorithmique\u002Fparcours-sequentiel","1.nsi-1ere\u002Fph-algorithmique\u002F1.parcours-sequentiel",{"title":421,"path":422,"stem":423},"Bases de la complexité","\u002Fnsi-1ere\u002Fph-algorithmique\u002Fcomplexite-bases","1.nsi-1ere\u002Fph-algorithmique\u002F2.complexite-bases",{"title":425,"path":426,"stem":427},"Tris par sélection et par insertion","\u002Fnsi-1ere\u002Fph-algorithmique\u002Ftris","1.nsi-1ere\u002Fph-algorithmique\u002F3.tris",{"title":429,"path":430,"stem":431},"Recherche dichotomique","\u002Fnsi-1ere\u002Fph-algorithmique\u002Fdichotomie","1.nsi-1ere\u002Fph-algorithmique\u002F4.dichotomie",{"title":433,"path":434,"stem":435},"Algorithmes gloutons","\u002Fnsi-1ere\u002Fph-algorithmique\u002Fgloutons","1.nsi-1ere\u002Fph-algorithmique\u002F5.gloutons",{"title":437,"path":438,"stem":439},"Les k plus proches voisins (k-NN)","\u002Fnsi-1ere\u002Fph-algorithmique\u002Fknn","1.nsi-1ere\u002Fph-algorithmique\u002F6.knn",{"title":441,"path":442,"stem":443,"children":444},"NSI — Terminale","\u002Fnsi-tale","2.nsi-tale\u002F0.index",[445,446,450,476,498,536,560],{"title":441,"path":442,"stem":443},{"title":447,"path":448,"stem":449},"Review pédagogique — chapitres NSI Terminale (TA, TB, TC, TD, TE)","\u002Fnsi-tale\u002Freview","2.nsi-tale\u002FREVIEW",{"title":451,"path":452,"stem":453,"children":454},"Structures de données","\u002Fnsi-tale\u002Fta-structures-donnees","2.nsi-tale\u002Fta-structures-donnees\u002F0.index",[455,456,460,464,468,472],{"title":451,"path":452,"stem":453},{"title":457,"path":458,"stem":459},"Objet, classe, interface","\u002Fnsi-tale\u002Fta-structures-donnees\u002Finterface-implementation","2.nsi-tale\u002Fta-structures-donnees\u002F1.interface-implementation",{"title":461,"path":462,"stem":463},"Implémenter une structure — l'exemple de la file FIFO","\u002Fnsi-tale\u002Fta-structures-donnees\u002Fimplementer-une-structure","2.nsi-tale\u002Fta-structures-donnees\u002F2.implementer-une-structure",{"title":465,"path":466,"stem":467},"Listes, piles, files, dictionnaires","\u002Fnsi-tale\u002Fta-structures-donnees\u002Flistes-piles-files-dict","2.nsi-tale\u002Fta-structures-donnees\u002F3.listes-piles-files-dict",{"title":469,"path":470,"stem":471},"Arbres binaires","\u002Fnsi-tale\u002Fta-structures-donnees\u002Farbres-binaires","2.nsi-tale\u002Fta-structures-donnees\u002F4.arbres-binaires",{"title":473,"path":474,"stem":475},"Graphes","\u002Fnsi-tale\u002Fta-structures-donnees\u002Fgraphes","2.nsi-tale\u002Fta-structures-donnees\u002F5.graphes",{"title":477,"path":478,"stem":479,"children":480},"Bases de données","\u002Fnsi-tale\u002Ftb-bases-de-donnees","2.nsi-tale\u002Ftb-bases-de-donnees\u002F0.index",[481,482,486,490,494],{"title":477,"path":478,"stem":479},{"title":483,"path":484,"stem":485},"Le modèle relationnel","\u002Fnsi-tale\u002Ftb-bases-de-donnees\u002Fmodele-relationnel","2.nsi-tale\u002Ftb-bases-de-donnees\u002F1.modele-relationnel",{"title":487,"path":488,"stem":489},"Bases de données relationnelles et anomalies de schéma","\u002Fnsi-tale\u002Ftb-bases-de-donnees\u002Fbase-relationnelle","2.nsi-tale\u002Ftb-bases-de-donnees\u002F2.base-relationnelle",{"title":491,"path":492,"stem":493},"Le langage SQL","\u002Fnsi-tale\u002Ftb-bases-de-donnees\u002Fsql","2.nsi-tale\u002Ftb-bases-de-donnees\u002F3.sql",{"title":495,"path":496,"stem":497},"Les systèmes de gestion de bases de données","\u002Fnsi-tale\u002Ftb-bases-de-donnees\u002Fsgbd","2.nsi-tale\u002Ftb-bases-de-donnees\u002F4.sgbd",{"title":499,"path":500,"stem":501,"children":502},"Architectures matérielles, systèmes d'exploitation et réseaux","\u002Fnsi-tale\u002Ftc-archi-os-reseaux","2.nsi-tale\u002Ftc-archi-os-reseaux\u002F0.index",[503,504,508,512,516,520,524,528,532],{"title":499,"path":500,"stem":501},{"title":505,"path":506,"stem":507},"Le système sur puce (SoC)","\u002Fnsi-tale\u002Ftc-archi-os-reseaux\u002Fsysteme-sur-puce","2.nsi-tale\u002Ftc-archi-os-reseaux\u002F1.systeme-sur-puce",{"title":509,"path":510,"stem":511},"Processus et ordonnancement par l'OS","\u002Fnsi-tale\u002Ftc-archi-os-reseaux\u002Fprocessus-os","2.nsi-tale\u002Ftc-archi-os-reseaux\u002F2.processus-os",{"title":513,"path":514,"stem":515},"L'interblocage (deadlock)","\u002Fnsi-tale\u002Ftc-archi-os-reseaux\u002Finterblocage","2.nsi-tale\u002Ftc-archi-os-reseaux\u002F3.interblocage",{"title":517,"path":518,"stem":519},"Principes du routage","\u002Fnsi-tale\u002Ftc-archi-os-reseaux\u002Froutage-principes","2.nsi-tale\u002Ftc-archi-os-reseaux\u002F4.routage-principes",{"title":521,"path":522,"stem":523},"Protocoles de routage RIP et OSPF","\u002Fnsi-tale\u002Ftc-archi-os-reseaux\u002Fprotocoles-rip-ospf","2.nsi-tale\u002Ftc-archi-os-reseaux\u002F5.protocoles-rip-ospf",{"title":525,"path":526,"stem":527},"Chiffrement symétrique","\u002Fnsi-tale\u002Ftc-archi-os-reseaux\u002Fchiffrement-symetrique","2.nsi-tale\u002Ftc-archi-os-reseaux\u002F6.chiffrement-symetrique",{"title":529,"path":530,"stem":531},"Chiffrement asymétrique","\u002Fnsi-tale\u002Ftc-archi-os-reseaux\u002Fchiffrement-asymetrique","2.nsi-tale\u002Ftc-archi-os-reseaux\u002F7.chiffrement-asymetrique",{"title":533,"path":534,"stem":535},"HTTPS — l'échange de clé symétrique","\u002Fnsi-tale\u002Ftc-archi-os-reseaux\u002Fhttps-tls","2.nsi-tale\u002Ftc-archi-os-reseaux\u002F8.https-tls",{"title":381,"path":537,"stem":538,"children":539},"\u002Fnsi-tale\u002Ftd-langages-prog","2.nsi-tale\u002Ftd-langages-prog\u002F0.index",[540,541,544,548,552,556],{"title":381,"path":537,"stem":538},{"title":403,"path":542,"stem":543},"\u002Fnsi-tale\u002Ftd-langages-prog\u002Fmise-au-point","2.nsi-tale\u002Ftd-langages-prog\u002F1.mise-au-point",{"title":545,"path":546,"stem":547},"Modularité","\u002Fnsi-tale\u002Ftd-langages-prog\u002Fmodularite","2.nsi-tale\u002Ftd-langages-prog\u002F2.modularite",{"title":549,"path":550,"stem":551},"Récursivité","\u002Fnsi-tale\u002Ftd-langages-prog\u002Frecursivite","2.nsi-tale\u002Ftd-langages-prog\u002F3.recursivite",{"title":553,"path":554,"stem":555},"Paradigmes de programmation","\u002Fnsi-tale\u002Ftd-langages-prog\u002Fparadigmes","2.nsi-tale\u002Ftd-langages-prog\u002F4.paradigmes",{"title":557,"path":558,"stem":559},"Programme comme donnée — calculabilité et indécidabilité","\u002Fnsi-tale\u002Ftd-langages-prog\u002Fprogramme-comme-donnee","2.nsi-tale\u002Ftd-langages-prog\u002F5.programme-comme-donnee",{"title":411,"path":561,"stem":562,"children":563},"\u002Fnsi-tale\u002Fte-algorithmique","2.nsi-tale\u002Fte-algorithmique\u002F0.index",[564,565,569,573,577,581],{"title":411,"path":561,"stem":562},{"title":566,"path":567,"stem":568},"Algorithmes sur les arbres binaires","\u002Fnsi-tale\u002Fte-algorithmique\u002Farbres-binaires-algos","2.nsi-tale\u002Fte-algorithmique\u002F1.arbres-binaires-algos",{"title":570,"path":571,"stem":572},"Parcours de graphes — DFS, BFS, cycles, chemins","\u002Fnsi-tale\u002Fte-algorithmique\u002Fgraphes-parcours","2.nsi-tale\u002Fte-algorithmique\u002F2.graphes-parcours",{"title":574,"path":575,"stem":576},"Diviser pour régner","\u002Fnsi-tale\u002Fte-algorithmique\u002Fdiviser-pour-regner","2.nsi-tale\u002Fte-algorithmique\u002F3.diviser-pour-regner",{"title":578,"path":579,"stem":580},"Programmation dynamique","\u002Fnsi-tale\u002Fte-algorithmique\u002Fprogrammation-dynamique","2.nsi-tale\u002Fte-algorithmique\u002F4.programmation-dynamique",{"title":582,"path":583,"stem":584},"Recherche textuelle — l'algorithme de Boyer-Moore","\u002Fnsi-tale\u002Fte-algorithmique\u002Frecherche-textuelle","2.nsi-tale\u002Fte-algorithmique\u002F5.recherche-textuelle",[586,1496,2523,3716],{"id":587,"title":191,"bo":588,"body":591,"description":1481,"eval":1482,"extension":1483,"labo":1482,"meta":1484,"navigation":993,"path":192,"quizzes":1485,"readingTime":649,"seo":1494,"stem":193,"tp":1482,"__hash__":1495},"cours\u002F0.snt-2nde\u002Fsh-prog-notions\u002F1.sequences-affectations.md",[589,590],"SH05","SH01",{"type":592,"value":593,"toc":1470},"minimark",[594,599,612,623,626,628,632,635,689,708,716,723,733,763,767,782,808,811,834,857,882,885,935,938,944,948,959,1049,1079,1098,1123,1129,1139,1230,1240,1244,1247,1295,1353,1375,1379,1440,1444,1466],[595,596,598],"h2",{"id":597},"introduction","Introduction",[600,601,602,603,607,608,611],"p",{},"Un programme informatique, c'est avant tout une ",[604,605,606],"strong",{},"liste d'instructions"," que la\nmachine exécute ",[604,609,610],{},"les unes après les autres",", dans l'ordre où vous les avez\nécrites. Cette idée semble simple, mais elle est fondatrice : tout ce que vous\nprogrammerez par la suite repose dessus.",[600,613,614,615,618,619,622],{},"Pour faire des choses utiles, le programme doit pouvoir ",[604,616,617],{},"retenir"," des valeurs\nau fil de son exécution — un prénom, un âge, un total de points. C'est le rôle\ndes ",[604,620,621],{},"variables",". Dans cette première séance, vous allez écrire vos premières\nlignes de Python et comprendre comment la machine y donne suite.",[624,625],"bo-ref",{"code":589},[624,627],{"code":590},[595,629,631],{"id":630},"une-séquence-dinstructions","Une séquence d'instructions",[600,633,634],{},"Considérez ces trois lignes de Python :",[636,637,642],"pre",{"className":638,"code":639,"language":640,"meta":641,"style":641},"language-python shiki shiki-themes github-light github-light github-dark","print(\"Bonjour\")\nprint(\"Nous sommes en cours de SNT\")\nprint(\"Et nous écrivons notre premier programme\")\n","python","",[643,644,645,665,677],"code",{"__ignoreMap":641},[646,647,650,654,658,662],"span",{"class":648,"line":649},"line",1,[646,651,653],{"class":652},"sBjJW","print",[646,655,657],{"class":656},"sxrX7","(",[646,659,661],{"class":660},"sIIMD","\"Bonjour\"",[646,663,664],{"class":656},")\n",[646,666,668,670,672,675],{"class":648,"line":667},2,[646,669,653],{"class":652},[646,671,657],{"class":656},[646,673,674],{"class":660},"\"Nous sommes en cours de SNT\"",[646,676,664],{"class":656},[646,678,680,682,684,687],{"class":648,"line":679},3,[646,681,653],{"class":652},[646,683,657],{"class":656},[646,685,686],{"class":660},"\"Et nous écrivons notre premier programme\"",[646,688,664],{"class":656},[600,690,691,692,695,696,699,700,703,704,707],{},"Quand Python exécute ce programme, il lit la ",[604,693,694],{},"première ligne",", l'exécute, puis\nla ",[604,697,698],{},"deuxième",", puis la ",[604,701,702],{},"troisième",". Cet enchaînement s'appelle le ",[604,705,706],{},"flot\nd'exécution",". À l'écran, vous verrez apparaître :",[636,709,714],{"className":710,"code":712,"language":713,"meta":641},[711],"language-text","Bonjour\nNous sommes en cours de SNT\nEt nous écrivons notre premier programme\n","text",[643,715,712],{"__ignoreMap":641},[600,717,718,719,722],{},"L'ordre compte. Si vous inversez les lignes, le résultat affiché change. Une\n",[604,720,721],{},"séquence d'instructions"," est précisément cela : une succession d'actions\nexécutées dans un ordre déterminé.",[724,725,726],"note",{},[600,727,728,729,732],{},"Le mot ",[604,730,731],{},"instruction"," désigne une action que l'ordinateur sait faire :\nafficher quelque chose, mémoriser une valeur, faire un calcul. Une ligne de\ncode Python contient en général une seule instruction.",[734,735,739,745],"self-eval-qcm",{"correct":736,"explanation":737,"slug":738},"1","Python exécute les trois lignes dans l'ordre : A, puis B, puis A.","sequences-affectations-c1",[740,741,742],"template",{"v-slot:question":641},[600,743,744],{},"Qu'affiche ce programme : print('A') puis print('B') puis print('A') ?",[740,746,747],{"v-slot:choices":641},[748,749,750,754,757,760],"ul",{},[751,752,753],"li",{},"A A B",[751,755,756],{},"A B A",[751,758,759],{},"A B",[751,761,762],{},"B A A",[595,764,766],{"id":765},"la-variable-une-boîte-qui-retient-une-valeur","La variable, une boîte qui retient une valeur",[600,768,769,770,773,774,777,778,781],{},"Une ",[604,771,772],{},"variable"," est un nom auquel on associe une valeur. On la crée par une\n",[604,775,776],{},"affectation"," avec le signe ",[643,779,780],{},"="," :",[636,783,785],{"className":638,"code":784,"language":640,"meta":641,"style":641},"prenom = \"Léa\"\nage = 15\n",[643,786,787,798],{"__ignoreMap":641},[646,788,789,792,795],{"class":648,"line":649},[646,790,791],{"class":656},"prenom ",[646,793,780],{"class":794},"s8jYJ",[646,796,797],{"class":660}," \"Léa\"\n",[646,799,800,803,805],{"class":648,"line":667},[646,801,802],{"class":656},"age ",[646,804,780],{"class":794},[646,806,807],{"class":652}," 15\n",[600,809,810],{},"Après ces deux lignes :",[748,812,813,824],{},[751,814,815,816,819,820,823],{},"la variable ",[643,817,818],{},"prenom"," contient la chaîne de caractères ",[643,821,822],{},"\"Léa\""," ;",[751,825,815,826,829,830,833],{},[643,827,828],{},"age"," contient le nombre entier ",[643,831,832],{},"15",".",[600,835,836,837,839,840,843,844,846,847,850,851,854,855,833],{},"Le signe ",[643,838,780],{}," n'a ",[604,841,842],{},"pas"," la signification du « égale » des mathématiques. En\nPython, ",[643,845,780],{}," signifie « range la valeur de ",[604,848,849],{},"droite"," dans la boîte nommée à\n",[604,852,853],{},"gauche"," ». On parle d'",[604,856,776],{},[858,859,861],"callout",{"type":860},"info",[600,862,863,866,867,870,871,881],{},[604,864,865],{},"À retenir"," : ",[643,868,869],{},"prenom = \"Léa\""," se lit ",[872,873,874,875,877,878,880],"em",{},"« on affecte la valeur ",[643,876,822],{}," à la\nvariable ",[643,879,818],{}," »",". La flèche mentale va de droite à gauche.",[600,883,884],{},"Une fois affectée, la variable se réutilise comme si elle valait sa valeur :",[636,886,888],{"className":638,"code":887,"language":640,"meta":641,"style":641},"prenom = \"Léa\"\nage = 15\nprint(\"Bonjour\", prenom)\nprint(\"Vous avez\", age, \"ans\")\n",[643,889,890,898,906,917],{"__ignoreMap":641},[646,891,892,894,896],{"class":648,"line":649},[646,893,791],{"class":656},[646,895,780],{"class":794},[646,897,797],{"class":660},[646,899,900,902,904],{"class":648,"line":667},[646,901,802],{"class":656},[646,903,780],{"class":794},[646,905,807],{"class":652},[646,907,908,910,912,914],{"class":648,"line":679},[646,909,653],{"class":652},[646,911,657],{"class":656},[646,913,661],{"class":660},[646,915,916],{"class":656},", prenom)\n",[646,918,920,922,924,927,930,933],{"class":648,"line":919},4,[646,921,653],{"class":652},[646,923,657],{"class":656},[646,925,926],{"class":660},"\"Vous avez\"",[646,928,929],{"class":656},", age, ",[646,931,932],{"class":660},"\"ans\"",[646,934,664],{"class":656},[600,936,937],{},"Affichage attendu :",[636,939,942],{"className":940,"code":941,"language":713,"meta":641},[711],"Bonjour Léa\nVous avez 15 ans\n",[643,943,941],{"__ignoreMap":641},[595,945,947],{"id":946},"une-variable-change-de-valeur","Une variable change de valeur",[600,949,950,951,954,955,958],{},"Le mot « variable » porte bien son nom : sa valeur peut ",[604,952,953],{},"changer"," au cours du\nprogramme. Chaque nouvelle affectation ",[604,956,957],{},"remplace"," l'ancienne valeur :",[960,961,962],"python-snippet",{},[636,963,965],{"className":638,"code":964,"language":640,"meta":641,"style":641},"score = 0\nprint(\"Score initial :\", score)\n\nscore = 10\nprint(\"Après un bon coup :\", score)\n\nscore = score + 5\nprint(\"Après bonus :\", score)\n",[643,966,967,977,989,995,1004,1016,1021,1037],{"__ignoreMap":641},[646,968,969,972,974],{"class":648,"line":649},[646,970,971],{"class":656},"score ",[646,973,780],{"class":794},[646,975,976],{"class":652}," 0\n",[646,978,979,981,983,986],{"class":648,"line":667},[646,980,653],{"class":652},[646,982,657],{"class":656},[646,984,985],{"class":660},"\"Score initial :\"",[646,987,988],{"class":656},", score)\n",[646,990,991],{"class":648,"line":679},[646,992,994],{"emptyLinePlaceholder":993},true,"\n",[646,996,997,999,1001],{"class":648,"line":919},[646,998,971],{"class":656},[646,1000,780],{"class":794},[646,1002,1003],{"class":652}," 10\n",[646,1005,1007,1009,1011,1014],{"class":648,"line":1006},5,[646,1008,653],{"class":652},[646,1010,657],{"class":656},[646,1012,1013],{"class":660},"\"Après un bon coup :\"",[646,1015,988],{"class":656},[646,1017,1019],{"class":648,"line":1018},6,[646,1020,994],{"emptyLinePlaceholder":993},[646,1022,1024,1026,1028,1031,1034],{"class":648,"line":1023},7,[646,1025,971],{"class":656},[646,1027,780],{"class":794},[646,1029,1030],{"class":656}," score ",[646,1032,1033],{"class":794},"+",[646,1035,1036],{"class":652}," 5\n",[646,1038,1040,1042,1044,1047],{"class":648,"line":1039},8,[646,1041,653],{"class":652},[646,1043,657],{"class":656},[646,1045,1046],{"class":660},"\"Après bonus :\"",[646,1048,988],{"class":656},[600,1050,1051,1052,1055,1056,1059,1060,1063,1064,1067,1068,1071,1072,1075,1076,1078],{},"Regardez bien la troisième affectation : ",[643,1053,1054],{},"score = score + 5",". Python évalue\n",[604,1057,1058],{},"d'abord"," la partie droite (",[643,1061,1062],{},"score + 5",", qui vaut ",[643,1065,1066],{},"10 + 5 = 15","), ",[604,1069,1070],{},"puis","\nrange le résultat dans ",[643,1073,1074],{},"score",". La valeur précédente de ",[643,1077,1074],{}," est définitivement\nperdue.",[1080,1081,1082],"warning",{},[600,1083,1084,1086,1087,1089,1090,833],{},[643,1085,1054],{}," ne ressemble à aucune équation mathématique sensée. C'est\nune ",[604,1088,731],{},", pas une égalité. Lue dans le bon sens, elle dit :\n",[872,1091,1092,1093,1095,1096,880],{},"« calcule ",[643,1094,1062],{},", puis stocke ce nombre dans ",[643,1097,1074],{},[734,1099,1103,1108],{"correct":1100,"explanation":1101,"slug":1102},"3","x devient 3, puis 3+1=4, puis 4*2=8.","sequences-affectations-c2",[740,1104,1105],{"v-slot:question":641},[600,1106,1107],{},"Après x = 3 puis x = x + 1 puis x = x * 2, que vaut x ?",[740,1109,1110],{"v-slot:choices":641},[748,1111,1112,1114,1117,1120],{},[751,1113,1100],{},[751,1115,1116],{},"4",[751,1118,1119],{},"7",[751,1121,1122],{},"8",[595,1124,1126,1127],{"id":1125},"lexpression-à-droite-du","L'expression à droite du ",[643,1128,780],{},[600,1130,1131,1132,1134,1135,1138],{},"À droite du signe ",[643,1133,780],{},", on peut mettre n'importe quelle ",[604,1136,1137],{},"expression"," : une\nvaleur écrite directement, un calcul, ou une combinaison qui mélange des\nvariables et des opérations.",[1140,1141,1142,1158],"table",{},[1143,1144,1145],"thead",{},[1146,1147,1148,1152,1155],"tr",{},[1149,1150,1151],"th",{},"Affectation",[1149,1153,1154],{},"Ce qui est calculé à droite",[1149,1156,1157],{},"Valeur stockée à gauche",[1159,1160,1161,1174,1186,1199,1215],"tbody",{},[1146,1162,1163,1169,1172],{},[1164,1165,1166],"td",{},[643,1167,1168],{},"a = 5",[1164,1170,1171],{},"5",[1164,1173,1171],{},[1146,1175,1176,1181,1184],{},[1164,1177,1178],{},[643,1179,1180],{},"b = a + 2",[1164,1182,1183],{},"5 + 2 = 7",[1164,1185,1119],{},[1146,1187,1188,1193,1196],{},[1164,1189,1190],{},[643,1191,1192],{},"c = a * b",[1164,1194,1195],{},"5 × 7 = 35",[1164,1197,1198],{},"35",[1146,1200,1201,1206,1211],{},[1164,1202,1203],{},[643,1204,1205],{},"nom = \"Léa\"",[1164,1207,1208,1209],{},"la chaîne ",[643,1210,822],{},[1164,1212,1213],{},[643,1214,822],{},[1146,1216,1217,1222,1225],{},[1164,1218,1219],{},[643,1220,1221],{},"salut = \"Bonjour \" + nom",[1164,1223,1224],{},"concaténation",[1164,1226,1227],{},[643,1228,1229],{},"\"Bonjour Léa\"",[600,1231,1232,1233,1236,1237,833],{},"Le programme s'exécute toujours ",[604,1234,1235],{},"de haut en bas, ligne par ligne"," : à chaque\naffectation, Python utilise la valeur que les variables ont ",[604,1238,1239],{},"à ce moment-là",[595,1241,1243],{"id":1242},"nommer-correctement-ses-variables","Nommer correctement ses variables",[600,1245,1246],{},"Quelques règles à respecter pour les noms de variables en Python :",[748,1248,1249,1260,1274],{},[751,1250,1251,1252,1255,1256,1259],{},"Que des ",[604,1253,1254],{},"lettres, chiffres et soulignés"," (",[643,1257,1258],{},"_","). Pas d'espace, pas d'accent,\npas de tiret.",[751,1261,1262,1263,1265,1266,1269,1270,1273],{},"Le nom ne commence ",[604,1264,842],{}," par un chiffre. ",[643,1267,1268],{},"score1"," est valable, ",[643,1271,1272],{},"1score"," ne\nl'est pas.",[751,1275,1276,1277,866,1280,1282,1283,1286,1287,1290,1291,1294],{},"Choisir un nom ",[604,1278,1279],{},"parlant",[643,1281,828],{}," plutôt que ",[643,1284,1285],{},"a",", ",[643,1288,1289],{},"nombre_eleves"," plutôt\nque ",[643,1292,1293],{},"n",". Votre code se relit beaucoup plus facilement.",[636,1296,1298],{"className":638,"code":1297,"language":640,"meta":641,"style":641},"# Recommandé\nnombre_eleves = 28\nprenom_prof = \"M. Dupont\"\n\n# À éviter (même si Python l'accepte)\nx = 28\ntruc = \"M. Dupont\"\n",[643,1299,1300,1306,1316,1326,1330,1335,1344],{"__ignoreMap":641},[646,1301,1302],{"class":648,"line":649},[646,1303,1305],{"class":1304},"sCsY4","# Recommandé\n",[646,1307,1308,1311,1313],{"class":648,"line":667},[646,1309,1310],{"class":656},"nombre_eleves ",[646,1312,780],{"class":794},[646,1314,1315],{"class":652}," 28\n",[646,1317,1318,1321,1323],{"class":648,"line":679},[646,1319,1320],{"class":656},"prenom_prof ",[646,1322,780],{"class":794},[646,1324,1325],{"class":660}," \"M. Dupont\"\n",[646,1327,1328],{"class":648,"line":919},[646,1329,994],{"emptyLinePlaceholder":993},[646,1331,1332],{"class":648,"line":1006},[646,1333,1334],{"class":1304},"# À éviter (même si Python l'accepte)\n",[646,1336,1337,1340,1342],{"class":648,"line":1018},[646,1338,1339],{"class":656},"x ",[646,1341,780],{"class":794},[646,1343,1315],{"class":652},[646,1345,1346,1349,1351],{"class":648,"line":1023},[646,1347,1348],{"class":656},"truc ",[646,1350,780],{"class":794},[646,1352,1325],{"class":660},[1354,1355,1356],"tip",{},[600,1357,1358,1359,1362,1363,1366,1367,1370,1371,1374],{},"La convention française en Python est d'utiliser le ",[604,1360,1361],{},"snake_case"," : tout en\nminuscules, avec un underscore entre les mots (",[643,1364,1365],{},"note_finale",", pas ",[643,1368,1369],{},"noteFinale","\nni ",[643,1372,1373],{},"NoteFinale",").",[595,1376,1378],{"id":1377},"pièges-courants","Pièges courants",[1080,1380,1381],{},[748,1382,1383,1404,1421],{},[751,1384,1385,1393,1394,1396,1397,1399,1400,1403],{},[604,1386,1387,1389,1390],{},[643,1388,780],{}," n'est pas ",[643,1391,1392],{},"==",". Le simple ",[643,1395,780],{}," affecte une valeur. Le double ",[643,1398,1392],{}," (que\nvous verrez bientôt) sert à ",[604,1401,1402],{},"comparer",". Ne pas confondre.",[751,1405,1406,1409,1410,1413,1414,1417,1418,1374],{},[604,1407,1408],{},"Une variable doit être affectée avant d'être utilisée",". Écrire\n",[643,1411,1412],{},"print(age)"," sans avoir d'abord fait ",[643,1415,1416],{},"age = 15"," quelque part au-dessus\nprovoque une erreur (",[643,1419,1420],{},"NameError",[751,1422,1423,1426,1427,1429,1430,1433,1434,1436,1437,1439],{},[604,1424,1425],{},"Les guillemets distinguent texte et nombre",". ",[643,1428,1416],{}," met le nombre 15.\n",[643,1431,1432],{},"age = \"15\""," met la chaîne de caractères composée des deux symboles ",[643,1435,736],{}," et\n",[643,1438,1171],{},". On ne peut pas faire les mêmes opérations sur les deux.",[595,1441,1443],{"id":1442},"vérification-finale","Vérification finale",[734,1445,1448,1453],{"correct":1100,"explanation":1446,"slug":1447},"0, puis 0+3=3, puis 3+4=7.","sequences-affectations-c3",[740,1449,1450],{"v-slot:question":641},[600,1451,1452],{},"Que vaut total à la fin : total = 0 ; total = total + 3 ; total = total + 4 ?",[740,1454,1455],{"v-slot:choices":641},[748,1456,1457,1460,1462,1464],{},[751,1458,1459],{},"0",[751,1461,1100],{},[751,1463,1116],{},[751,1465,1119],{},[1467,1468,1469],"style",{},"html pre.shiki code .sBjJW, html code.shiki .sBjJW{--shiki-light:#005CC5;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sxrX7, html code.shiki .sxrX7{--shiki-light:#24292E;--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sIIMD, html code.shiki .sIIMD{--shiki-light:#032F62;--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .s8jYJ, html code.shiki .s8jYJ{--shiki-light:#D73A49;--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sCsY4, html code.shiki .sCsY4{--shiki-light:#6A737D;--shiki-default:#6A737D;--shiki-dark:#6A737D}",{"title":641,"searchDepth":667,"depth":667,"links":1471},[1472,1473,1474,1475,1476,1478,1479,1480],{"id":597,"depth":667,"text":598},{"id":630,"depth":667,"text":631},{"id":765,"depth":667,"text":766},{"id":946,"depth":667,"text":947},{"id":1125,"depth":667,"text":1477},"L'expression à droite du =",{"id":1242,"depth":667,"text":1243},{"id":1377,"depth":667,"text":1378},{"id":1442,"depth":667,"text":1443},"Un programme est une suite d'instructions exécutées dans l'ordre. Découverte de l'affectation et des variables Python.",null,"md",{},[1486,1490,1492],{"slug":738,"kind":1487,"question":744,"choices":1488,"correct":736,"multi":1489,"explanation":737},"qcm",[753,756,759,762],false,{"slug":1102,"kind":1487,"question":1107,"choices":1491,"correct":1100,"multi":1489,"explanation":1101},[1100,1116,1119,1122],{"slug":1447,"kind":1487,"question":1452,"choices":1493,"correct":1100,"multi":1489,"explanation":1446},[1459,1100,1116,1119],{"title":191,"description":1481},"L39nI2ajlDmBZQNabA7yztFgBwvq57YwmfmYxb2XPJY",{"id":1497,"title":195,"bo":1498,"body":1500,"description":2514,"eval":1482,"extension":1483,"labo":1482,"meta":2515,"navigation":993,"path":196,"quizzes":2516,"readingTime":649,"seo":2521,"stem":197,"tp":1482,"__hash__":2522},"cours\u002F0.snt-2nde\u002Fsh-prog-notions\u002F2.conditionnelles.md",[1499],"SH04",{"type":592,"value":1501,"toc":2499},[1502,1504,1515,1536,1538,1542,1560,1693,1715,1722,1725,1770,1773,1798,1821,1832,1856,1863,1868,1924,1936,1942,1956,1963,1973,2084,2098,2132,2150,2176,2183,2189,2196,2200,2203,2314,2333,2335,2389,2393,2408,2480,2496],[595,1503,598],{"id":597},[600,1505,1506,1507,1510,1511,1514],{},"Jusqu'ici, vos programmes exécutaient toutes les lignes, du début à la fin,\n",[604,1508,1509],{},"sans choisir",". Mais souvent, on veut qu'un programme se comporte\n",[604,1512,1513],{},"différemment selon les circonstances"," : afficher « bienvenue » si la\npersonne est majeure et « refus » sinon, indiquer « il fait froid » si la\ntempérature descend sous 5 °C, etc.",[600,1516,1517,1518,866,1521,1286,1524,1527,1528,1531,1532,1535],{},"Pour cela, Python possède les ",[604,1519,1520],{},"instructions conditionnelles",[643,1522,1523],{},"if",[643,1525,1526],{},"elif",",\n",[643,1529,1530],{},"else",". Elles permettent au programme de ",[604,1533,1534],{},"prendre une décision"," au moment de\nson exécution.",[624,1537],{"code":1499},[595,1539,1541],{"id":1540},"la-condition-ce-qui-est-vrai-ou-faux","La condition, ce qui est vrai ou faux",[600,1543,769,1544,1547,1548,1551,1552,1555,1556,1559],{},[604,1545,1546],{},"condition"," est une expression qui s'évalue à ",[643,1549,1550],{},"True"," (vrai) ou à ",[643,1553,1554],{},"False","\n(faux). On la construit le plus souvent en ",[604,1557,1558],{},"comparant deux valeurs"," avec un\nopérateur de comparaison :",[1140,1561,1562,1578],{},[1143,1563,1564],{},[1146,1565,1566,1569,1572,1575],{},[1149,1567,1568],{},"Opérateur",[1149,1570,1571],{},"Signification",[1149,1573,1574],{},"Exemple",[1149,1576,1577],{},"Évaluation",[1159,1579,1580,1598,1617,1636,1655,1674],{},[1146,1581,1582,1586,1589,1594],{},[1164,1583,1584],{},[643,1585,1392],{},[1164,1587,1588],{},"est égal à",[1164,1590,1591],{},[643,1592,1593],{},"3 == 3",[1164,1595,1596],{},[643,1597,1550],{},[1146,1599,1600,1605,1608,1613],{},[1164,1601,1602],{},[643,1603,1604],{},"!=",[1164,1606,1607],{},"est différent de",[1164,1609,1610],{},[643,1611,1612],{},"3 != 5",[1164,1614,1615],{},[643,1616,1550],{},[1146,1618,1619,1624,1627,1632],{},[1164,1620,1621],{},[643,1622,1623],{},"\u003C",[1164,1625,1626],{},"est strictement inférieur à",[1164,1628,1629],{},[643,1630,1631],{},"3 \u003C 5",[1164,1633,1634],{},[643,1635,1550],{},[1146,1637,1638,1643,1646,1651],{},[1164,1639,1640],{},[643,1641,1642],{},">",[1164,1644,1645],{},"est strictement supérieur à",[1164,1647,1648],{},[643,1649,1650],{},"3 > 5",[1164,1652,1653],{},[643,1654,1554],{},[1146,1656,1657,1662,1665,1670],{},[1164,1658,1659],{},[643,1660,1661],{},"\u003C=",[1164,1663,1664],{},"est inférieur ou égal à",[1164,1666,1667],{},[643,1668,1669],{},"3 \u003C= 3",[1164,1671,1672],{},[643,1673,1550],{},[1146,1675,1676,1681,1684,1689],{},[1164,1677,1678],{},[643,1679,1680],{},">=",[1164,1682,1683],{},"est supérieur ou égal à",[1164,1685,1686],{},[643,1687,1688],{},"5 >= 3",[1164,1690,1691],{},[643,1692,1550],{},[1080,1694,1695],{},[600,1696,1697,1698,1700,1701,1704,1705,1707,1708,1710,1711,1714],{},"Pour ",[604,1699,1402],{},", on utilise ",[604,1702,1703],{},"deux"," signes égal : ",[643,1706,1392],{},". Avec un seul signe\n",[643,1709,780],{},", on ",[604,1712,1713],{},"affecte"," une valeur. C'est l'erreur de débutant la plus fréquente.",[595,1716,1718,1719,1721],{"id":1717},"linstruction-if-une-seule-branche","L'instruction ",[643,1720,1523],{}," — une seule branche",[600,1723,1724],{},"La forme la plus simple :",[636,1726,1728],{"className":638,"code":1727,"language":640,"meta":641,"style":641},"age = 18\n\nif age >= 18:\n    print(\"Vous êtes majeur\")\n",[643,1729,1730,1739,1743,1758],{"__ignoreMap":641},[646,1731,1732,1734,1736],{"class":648,"line":649},[646,1733,802],{"class":656},[646,1735,780],{"class":794},[646,1737,1738],{"class":652}," 18\n",[646,1740,1741],{"class":648,"line":667},[646,1742,994],{"emptyLinePlaceholder":993},[646,1744,1745,1747,1750,1752,1755],{"class":648,"line":679},[646,1746,1523],{"class":794},[646,1748,1749],{"class":656}," age ",[646,1751,1680],{"class":794},[646,1753,1754],{"class":652}," 18",[646,1756,1757],{"class":656},":\n",[646,1759,1760,1763,1765,1768],{"class":648,"line":919},[646,1761,1762],{"class":652},"    print",[646,1764,657],{"class":656},[646,1766,1767],{"class":660},"\"Vous êtes majeur\"",[646,1769,664],{"class":656},[600,1771,1772],{},"Décodage ligne par ligne :",[748,1774,1775,1781,1795],{},[751,1776,1777,1778,1780],{},"ligne 1 : la variable ",[643,1779,828],{}," reçoit la valeur 18 ;",[751,1782,1783,1784,1787,1788,1790,1791,1794],{},"ligne 3 : Python évalue ",[643,1785,1786],{},"age >= 18",". C'est ",[643,1789,1550],{},", donc il ",[604,1792,1793],{},"exécute"," le\nbloc en dessous (indenté de 4 espaces) ;",[751,1796,1797],{},"ligne 4 : affichage de « Vous êtes majeur ».",[600,1799,1800,1801,1804,1805,1807,1808,1810,1811,1813,1814,1816,1817,1820],{},"Si on remplace ",[643,1802,1803],{},"age = 18"," par ",[643,1806,1416],{},", la condition ",[643,1809,1786],{}," vaut\n",[643,1812,1554],{},", et le ",[643,1815,653],{}," n'est ",[604,1818,1819],{},"jamais exécuté",". Le programme passe à la\nsuite, comme si la ligne 4 n'existait pas.",[858,1822,1823],{"type":860},[600,1824,1825,1828,1829,1831],{},[604,1826,1827],{},"L'indentation est obligatoire en Python",". Le bloc qui dépend du ",[643,1830,1523],{}," est\ndécalé vers la droite (par convention, 4 espaces). Sans indentation, Python\nrefuse d'exécuter le programme.",[734,1833,1836,1841],{"correct":736,"explanation":1834,"slug":1835},"La condition 16 >= 18 est fausse, le print est ignoré.","conditionnelles-c1",[740,1837,1838],{"v-slot:question":641},[600,1839,1840],{},"Qu'affiche : age = 16 ; if age >= 18: print('OK') ?",[740,1842,1843],{"v-slot:choices":641},[748,1844,1845,1848,1851,1853],{},[751,1846,1847],{},"OK",[751,1849,1850],{},"rien",[751,1852,1554],{},[751,1854,1855],{},"une erreur",[595,1857,1859,1862],{"id":1858},"if-else-deux-chemins",[643,1860,1861],{},"if … else …"," — deux chemins",[600,1864,1865,1866,781],{},"Que se passe-t-il si on veut traiter aussi le cas où la condition est fausse ?\nOn ajoute un ",[643,1867,1530],{},[636,1869,1871],{"className":638,"code":1870,"language":640,"meta":641,"style":641},"age = 15\n\nif age >= 18:\n    print(\"Vous êtes majeur\")\nelse:\n    print(\"Vous êtes mineur\")\n",[643,1872,1873,1881,1885,1897,1907,1913],{"__ignoreMap":641},[646,1874,1875,1877,1879],{"class":648,"line":649},[646,1876,802],{"class":656},[646,1878,780],{"class":794},[646,1880,807],{"class":652},[646,1882,1883],{"class":648,"line":667},[646,1884,994],{"emptyLinePlaceholder":993},[646,1886,1887,1889,1891,1893,1895],{"class":648,"line":679},[646,1888,1523],{"class":794},[646,1890,1749],{"class":656},[646,1892,1680],{"class":794},[646,1894,1754],{"class":652},[646,1896,1757],{"class":656},[646,1898,1899,1901,1903,1905],{"class":648,"line":919},[646,1900,1762],{"class":652},[646,1902,657],{"class":656},[646,1904,1767],{"class":660},[646,1906,664],{"class":656},[646,1908,1909,1911],{"class":648,"line":1006},[646,1910,1530],{"class":794},[646,1912,1757],{"class":656},[646,1914,1915,1917,1919,1922],{"class":648,"line":1018},[646,1916,1762],{"class":652},[646,1918,657],{"class":656},[646,1920,1921],{"class":660},"\"Vous êtes mineur\"",[646,1923,664],{"class":656},[600,1925,1926,1927,1929,1930,1933,1934,781],{},"Avec ",[643,1928,1416],{},", Python exécute ",[604,1931,1932],{},"uniquement"," le bloc ",[643,1935,1530],{},[636,1937,1940],{"className":1938,"code":1939,"language":713,"meta":641},[711],"Vous êtes mineur\n",[643,1941,1939],{"__ignoreMap":641},[600,1943,1926,1944,1947,1948,1933,1950,1426,1952,1955],{},[643,1945,1946],{},"age = 20",", ce serait ",[604,1949,1932],{},[643,1951,1523],{},[604,1953,1954],{},"Exactement un des\ndeux blocs"," est exécuté à chaque passage — jamais les deux, jamais aucun.",[595,1957,1959,1962],{"id":1958},"if-elif-else-plusieurs-chemins",[643,1960,1961],{},"if … elif … else …"," — plusieurs chemins",[600,1964,1965,1966,1968,1969,1972],{},"Quand il y a plus de deux situations possibles, on enchaîne avec un ou\nplusieurs ",[643,1967,1526],{}," (contraction de ",[872,1970,1971],{},"else if",") :",[636,1974,1976],{"className":638,"code":1975,"language":640,"meta":641,"style":641},"note = 13\n\nif note >= 16:\n    print(\"Très bien\")\nelif note >= 12:\n    print(\"Bien\")\nelif note >= 10:\n    print(\"Assez bien\")\nelse:\n    print(\"À retravailler\")\n",[643,1977,1978,1988,1992,2006,2017,2030,2041,2054,2065,2072],{"__ignoreMap":641},[646,1979,1980,1983,1985],{"class":648,"line":649},[646,1981,1982],{"class":656},"note ",[646,1984,780],{"class":794},[646,1986,1987],{"class":652}," 13\n",[646,1989,1990],{"class":648,"line":667},[646,1991,994],{"emptyLinePlaceholder":993},[646,1993,1994,1996,1999,2001,2004],{"class":648,"line":679},[646,1995,1523],{"class":794},[646,1997,1998],{"class":656}," note ",[646,2000,1680],{"class":794},[646,2002,2003],{"class":652}," 16",[646,2005,1757],{"class":656},[646,2007,2008,2010,2012,2015],{"class":648,"line":919},[646,2009,1762],{"class":652},[646,2011,657],{"class":656},[646,2013,2014],{"class":660},"\"Très bien\"",[646,2016,664],{"class":656},[646,2018,2019,2021,2023,2025,2028],{"class":648,"line":1006},[646,2020,1526],{"class":794},[646,2022,1998],{"class":656},[646,2024,1680],{"class":794},[646,2026,2027],{"class":652}," 12",[646,2029,1757],{"class":656},[646,2031,2032,2034,2036,2039],{"class":648,"line":1018},[646,2033,1762],{"class":652},[646,2035,657],{"class":656},[646,2037,2038],{"class":660},"\"Bien\"",[646,2040,664],{"class":656},[646,2042,2043,2045,2047,2049,2052],{"class":648,"line":1023},[646,2044,1526],{"class":794},[646,2046,1998],{"class":656},[646,2048,1680],{"class":794},[646,2050,2051],{"class":652}," 10",[646,2053,1757],{"class":656},[646,2055,2056,2058,2060,2063],{"class":648,"line":1039},[646,2057,1762],{"class":652},[646,2059,657],{"class":656},[646,2061,2062],{"class":660},"\"Assez bien\"",[646,2064,664],{"class":656},[646,2066,2068,2070],{"class":648,"line":2067},9,[646,2069,1530],{"class":794},[646,2071,1757],{"class":656},[646,2073,2075,2077,2079,2082],{"class":648,"line":2074},10,[646,2076,1762],{"class":652},[646,2078,657],{"class":656},[646,2080,2081],{"class":660},"\"À retravailler\"",[646,2083,664],{"class":656},[600,2085,2086,2087,2090,2091,2094,2095,781],{},"Python teste les conditions ",[604,2088,2089],{},"dans l'ordre, de haut en bas",", et s'arrête\n",[604,2092,2093],{},"à la première qui est vraie",". Pour ",[643,2096,2097],{},"note = 13",[2099,2100,2101,2107,2124],"ol",{},[751,2102,2103,2106],{},[643,2104,2105],{},"note >= 16"," ? Non.",[751,2108,2109,2112,2113,2116,2117,2119,2120,2123],{},[643,2110,2111],{},"note >= 12"," ? ",[604,2114,2115],{},"Oui"," → affiche ",[643,2118,2038],{}," et ",[604,2121,2122],{},"sort"," de la structure.",[751,2125,2126,2127,2119,2129,2131],{},"Les conditions ",[643,2128,1526],{},[643,2130,1530],{}," suivants sont ignorés.",[724,2133,2134],{},[600,2135,1926,2136,2139,2140,2143,2144,2146,2147],{},[643,2137,2138],{},"note = 18",", c'est la première branche qui se déclenche (",[643,2141,2142],{},">= 16",") et\nles autres sont sautées — même si ",[643,2145,2111],{}," est aussi vrai. ",[604,2148,2149],{},"Première\nvraie gagne, fin de l'histoire.",[734,2151,2155,2160],{"correct":2152,"explanation":2153,"slug":2154},"2","11 n'est pas >= 16, ni >= 12, mais bien >= 10.","conditionnelles-c2",[740,2156,2157],{"v-slot:question":641},[600,2158,2159],{},"Avec note = 11, qu'affiche le programme ci-dessus ?",[740,2161,2162],{"v-slot:choices":641},[748,2163,2164,2167,2170,2173],{},[751,2165,2166],{},"Très bien",[751,2168,2169],{},"Bien",[751,2171,2172],{},"Assez bien",[751,2174,2175],{},"À retravailler",[595,2177,2179,2180,2182],{"id":2178},"visualiser-un-if-complet","Visualiser un ",[643,2181,1523],{}," complet",[600,2184,2185,2186,781],{},"Le schéma logique d'une instruction ",[643,2187,2188],{},"if\u002Felif\u002Felse",[2190,2191],"illustration",{"alt":2192,"kind":2193,"src":2194,"svg":2195},"Schéma d'une instruction conditionnelle","mermaid","\u002Fillustrations\u002F0.snt-2nde\u002Fsh-prog-notions\u002Fconditionnelles.svg","\u003Csvg id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles\" xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" xmlns:xlink=\"http:\u002F\u002Fwww.w3.org\u002F1999\u002Fxlink\" class=\"illustration-svg flowchart\" viewBox=\"0 0 624.84375 589.34375\" role=\"graphics-document document\" aria-roledescription=\"flowchart-v2\">\u003Cstyle>#ill-0-snt-2nde-sh-prog-notions-conditionnelles{font-family:Geist,Inter,system-ui,-apple-system,sans-serif;font-size:14px;fill:var(--diagram-text);}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .error-icon{fill:#fdecec;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .error-text{fill:var(--diagram-text);stroke:var(--diagram-text);}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .edge-thickness-normal{stroke-width:1px;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .edge-thickness-thick{stroke-width:3.5px;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .edge-pattern-solid{stroke-dasharray:0;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .edge-thickness-invisible{stroke-width:0;fill:none;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .edge-pattern-dashed{stroke-dasharray:3;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .edge-pattern-dotted{stroke-dasharray:2;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .marker{fill:var(--diagram-line);stroke:var(--diagram-line);}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .marker.cross{stroke:var(--diagram-line);}#ill-0-snt-2nde-sh-prog-notions-conditionnelles svg{font-family:Geist,Inter,system-ui,-apple-system,sans-serif;font-size:14px;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles p{margin:0;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .label{font-family:Geist,Inter,system-ui,-apple-system,sans-serif;color:var(--diagram-text);}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .cluster-label text{fill:var(--diagram-line);}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .cluster-label span{color:var(--diagram-line);}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .cluster-label span p{background-color:transparent;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .label text,#ill-0-snt-2nde-sh-prog-notions-conditionnelles span{fill:var(--diagram-text);color:var(--diagram-text);}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .node rect,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .node circle,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .node ellipse,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .node polygon,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .node path{fill:var(--diagram-node-bg);stroke:var(--diagram-node-border);stroke-width:1px;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .rough-node .label text,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .node .label text,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .image-shape .label,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .icon-shape .label{text-anchor:middle;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .rough-node .label,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .node .label,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .image-shape .label,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .icon-shape .label{text-align:center;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .node.clickable{cursor:pointer;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .root .anchor path{fill:var(--diagram-line)!important;stroke-width:0;stroke:var(--diagram-line);}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .arrowheadPath{fill:rgba(255, 255, 255, 0);}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .edgePath .path{stroke:var(--diagram-line);stroke-width:1px;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .flowchart-link{stroke:var(--diagram-line);fill:none;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .edgeLabel{background-color:var(--diagram-surface);text-align:center;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .edgeLabel p{background-color:var(--diagram-surface);}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .edgeLabel rect{opacity:0.5;background-color:var(--diagram-surface);fill:var(--diagram-surface);}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .labelBkg{background-color:rgba(250, 251, 252, 0.5);}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .cluster rect{fill:var(--diagram-surface);stroke:var(--diagram-border);stroke-width:1px;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .cluster text{fill:var(--diagram-line);}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .cluster span{color:var(--diagram-line);}#ill-0-snt-2nde-sh-prog-notions-conditionnelles div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:Geist,Inter,system-ui,-apple-system,sans-serif;font-size:12px;background:var(--diagram-surface);border:1px solid var(--diagram-border);border-radius:2px;pointer-events:none;z-index:100;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .flowchartTitleText{text-anchor:middle;font-size:18px;fill:var(--diagram-text);}#ill-0-snt-2nde-sh-prog-notions-conditionnelles rect.text{fill:none;stroke-width:0;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .icon-shape,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .image-shape{background-color:var(--diagram-surface);text-align:center;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .icon-shape p,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .image-shape p{background-color:var(--diagram-surface);padding:2px;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .icon-shape .label rect,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .image-shape .label rect{opacity:0.5;background-color:var(--diagram-surface);fill:var(--diagram-surface);}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .node .neo-node{stroke:var(--diagram-node-border);}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [data-look=\"neo\"].node rect,#ill-0-snt-2nde-sh-prog-notions-conditionnelles [data-look=\"neo\"].cluster rect,#ill-0-snt-2nde-sh-prog-notions-conditionnelles [data-look=\"neo\"].node polygon{stroke:url(#ill-0-snt-2nde-sh-prog-notions-conditionnelles-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [data-look=\"neo\"].node path{stroke:url(#ill-0-snt-2nde-sh-prog-notions-conditionnelles-gradient);stroke-width:1px;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [data-look=\"neo\"].node .outer-path{filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [data-look=\"neo\"].node .neo-line path{stroke:var(--diagram-node-border);filter:none;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [data-look=\"neo\"].node circle{stroke:url(#ill-0-snt-2nde-sh-prog-notions-conditionnelles-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [data-look=\"neo\"].node circle .state-start{fill:var(--diagram-text);}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [data-look=\"neo\"].icon-shape .icon{fill:url(#ill-0-snt-2nde-sh-prog-notions-conditionnelles-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [data-look=\"neo\"].icon-shape .icon-neo path{stroke:url(#ill-0-snt-2nde-sh-prog-notions-conditionnelles-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .node rect,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .node circle,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .node ellipse,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .node polygon,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .node path{stroke-width:1.5px;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .edgePath .path{stroke-width:1.5px;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .label,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .nodeLabel,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .edgeLabel,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .cluster-label,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .messageText,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .actor text{font-family:Geist,Inter,system-ui,sans-serif!important;font-weight:500!important;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .nodeLabel,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .cluster-label,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .nodeLabel p,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .cluster-label p{color:var(--diagram-text)!important;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .nodeLabel .markdown-node-label,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .nodeLabel .markdown-node-label p{color:var(--diagram-text)!important;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .stateLabel text,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .stateLabel{fill:var(--diagram-text)!important;font-weight:600!important;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .edgeLabel{padding:0px 6px;background-color:var(--diagram-surface)!important;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .edgeLabel rect.background,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .edgeLabel rect{fill:var(--diagram-surface)!important;opacity:1!important;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .edgeLabel .label text,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .edgeLabel text{fill:var(--diagram-line)!important;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .cluster rect{rx:4px;ry:4px;stroke-width:1px!important;stroke-dasharray:3,3!important;fill:transparent!important;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .node rect,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .node polygon,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .stateGroup rect{rx:4px;ry:4px;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles marker,#ill-0-snt-2nde-sh-prog-notions-conditionnelles marker path{fill:var(--diagram-line)!important;stroke:var(--diagram-line)!important;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .marker{fill:var(--diagram-line)!important;stroke:var(--diagram-line)!important;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .actor{stroke-width:1.5px;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .messageText,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .messageText tspan{fill:var(--diagram-text)!important;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .titleText{fill:var(--diagram-text)!important;font-weight:600!important;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .note text,#ill-0-snt-2nde-sh-prog-notions-conditionnelles .note .nodeLabel{fill:var(--diagram-line)!important;color:var(--diagram-line)!important;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .statediagram-cluster rect{fill:transparent!important;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles .statediagram-state .divider{stroke:var(--diagram-border)!important;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles :root{--mermaid-font-family:Geist,Inter,system-ui,-apple-system,sans-serif;}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"#eef0fc\"]{fill:var(--diagram-node-bg)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"#eef0fc\"]{stroke:var(--diagram-node-bg)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"#eef0fc\"]{stop-color:var(--diagram-node-bg)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"rgb(238, 240, 252)\"]{fill:var(--diagram-node-bg)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"rgb(238, 240, 252)\"]{stroke:var(--diagram-node-bg)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"rgb(238, 240, 252)\"]{stop-color:var(--diagram-node-bg)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"#4948b8\"]{fill:var(--diagram-node-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"#4948b8\"]{stroke:var(--diagram-node-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"#4948b8\"]{stop-color:var(--diagram-node-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"rgb(73, 72, 184)\"]{fill:var(--diagram-node-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"rgb(73, 72, 184)\"]{stroke:var(--diagram-node-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"rgb(73, 72, 184)\"]{stop-color:var(--diagram-node-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"#c8cdf5\"]{fill:var(--diagram-accent-soft)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"#c8cdf5\"]{stroke:var(--diagram-accent-soft)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"#c8cdf5\"]{stop-color:var(--diagram-accent-soft)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"rgb(200, 205, 245)\"]{fill:var(--diagram-accent-soft)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"rgb(200, 205, 245)\"]{stroke:var(--diagram-accent-soft)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"rgb(200, 205, 245)\"]{stop-color:var(--diagram-accent-soft)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"#1f2127\"]{fill:var(--diagram-text)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"#1f2127\"]{stroke:var(--diagram-text)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"#1f2127\"]{stop-color:var(--diagram-text)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"rgb(31, 33, 39)\"]{fill:var(--diagram-text)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"rgb(31, 33, 39)\"]{stroke:var(--diagram-text)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"rgb(31, 33, 39)\"]{stop-color:var(--diagram-text)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"#000000\"]{fill:var(--diagram-text)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"#000000\"]{stroke:var(--diagram-text)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"#000000\"]{stop-color:var(--diagram-text)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"rgb(0, 0, 0)\"]{fill:var(--diagram-text)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"rgb(0, 0, 0)\"]{stroke:var(--diagram-text)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"rgb(0, 0, 0)\"]{stop-color:var(--diagram-text)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"#56595e\"]{fill:var(--diagram-line)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"#56595e\"]{stroke:var(--diagram-line)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"#56595e\"]{stop-color:var(--diagram-line)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"rgb(86, 89, 94)\"]{fill:var(--diagram-line)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"rgb(86, 89, 94)\"]{stroke:var(--diagram-line)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"rgb(86, 89, 94)\"]{stop-color:var(--diagram-line)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"#fafbfc\"]{fill:var(--diagram-surface)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"#fafbfc\"]{stroke:var(--diagram-surface)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"#fafbfc\"]{stop-color:var(--diagram-surface)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"rgb(250, 251, 252)\"]{fill:var(--diagram-surface)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"rgb(250, 251, 252)\"]{stroke:var(--diagram-surface)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"rgb(250, 251, 252)\"]{stop-color:var(--diagram-surface)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"#f3f4f6\"]{fill:var(--diagram-surface-alt)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"#f3f4f6\"]{stroke:var(--diagram-surface-alt)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"#f3f4f6\"]{stop-color:var(--diagram-surface-alt)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"rgb(243, 244, 246)\"]{fill:var(--diagram-surface-alt)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"rgb(243, 244, 246)\"]{stroke:var(--diagram-surface-alt)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"rgb(243, 244, 246)\"]{stop-color:var(--diagram-surface-alt)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"#c4c8cd\"]{fill:var(--diagram-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"#c4c8cd\"]{stroke:var(--diagram-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"#c4c8cd\"]{stop-color:var(--diagram-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"rgb(196, 200, 205)\"]{fill:var(--diagram-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"rgb(196, 200, 205)\"]{stroke:var(--diagram-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"rgb(196, 200, 205)\"]{stop-color:var(--diagram-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"#e5e7eb\"]{fill:var(--diagram-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"#e5e7eb\"]{stroke:var(--diagram-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"#e5e7eb\"]{stop-color:var(--diagram-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"rgb(229, 231, 235)\"]{fill:var(--diagram-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"rgb(229, 231, 235)\"]{stroke:var(--diagram-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"rgb(229, 231, 235)\"]{stop-color:var(--diagram-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"#e0e0e0\"]{fill:var(--diagram-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"#e0e0e0\"]{stroke:var(--diagram-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"#e0e0e0\"]{stop-color:var(--diagram-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"rgb(224, 224, 224)\"]{fill:var(--diagram-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"rgb(224, 224, 224)\"]{stroke:var(--diagram-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"rgb(224, 224, 224)\"]{stop-color:var(--diagram-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"#EDF2AE\"]{fill:var(--diagram-surface)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"#EDF2AE\"]{stroke:var(--diagram-surface)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"#EDF2AE\"]{stop-color:var(--diagram-surface)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"rgb(237, 242, 174)\"]{fill:var(--diagram-surface)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"rgb(237, 242, 174)\"]{stroke:var(--diagram-surface)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"rgb(237, 242, 174)\"]{stop-color:var(--diagram-surface)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"#fff5ad\"]{fill:var(--diagram-surface)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"#fff5ad\"]{stroke:var(--diagram-surface)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"#fff5ad\"]{stop-color:var(--diagram-surface)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"rgb(255, 245, 173)\"]{fill:var(--diagram-surface)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"rgb(255, 245, 173)\"]{stroke:var(--diagram-surface)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"rgb(255, 245, 173)\"]{stop-color:var(--diagram-surface)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"#666\"]{fill:var(--diagram-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"#666\"]{stroke:var(--diagram-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"#666\"]{stop-color:var(--diagram-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [fill=\"rgb(0, 6, 102)\"]{fill:var(--diagram-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stroke=\"rgb(0, 6, 102)\"]{stroke:var(--diagram-border)}#ill-0-snt-2nde-sh-prog-notions-conditionnelles [stop-color=\"rgb(0, 6, 102)\"]{stop-color:var(--diagram-border)}\u003C\u002Fstyle>\u003Cg>\u003Cmarker id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles_flowchart-v2-pointEnd\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"5\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"8\" markerHeight=\"8\" orient=\"auto\">\u003Cpath d=\"M 0 0 L 10 5 L 0 10 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"\u002F>\u003C\u002Fmarker>\u003Cmarker id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles_flowchart-v2-pointStart\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"4.5\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"8\" markerHeight=\"8\" orient=\"auto\">\u003Cpath d=\"M 0 5 L 10 10 L 10 0 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"\u002F>\u003C\u002Fmarker>\u003Cmarker id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles_flowchart-v2-pointEnd-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 11.5 14\" refX=\"11.5\" refY=\"7\" markerUnits=\"userSpaceOnUse\" markerWidth=\"10.5\" markerHeight=\"14\" orient=\"auto\">\u003Cpath d=\"M 0 0 L 11.5 7 L 0 14 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"\u002F>\u003C\u002Fmarker>\u003Cmarker id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles_flowchart-v2-pointStart-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 11.5 14\" refX=\"1\" refY=\"7\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11.5\" markerHeight=\"14\" orient=\"auto\">\u003Cpolygon points=\"0,7 11.5,14 11.5,0\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"\u002F>\u003C\u002Fmarker>\u003Cmarker id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles_flowchart-v2-circleEnd\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"11\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\">\u003Ccircle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"\u002F>\u003C\u002Fmarker>\u003Cmarker id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles_flowchart-v2-circleStart\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"-1\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\">\u003Ccircle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"\u002F>\u003C\u002Fmarker>\u003Cmarker id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles_flowchart-v2-circleEnd-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refY=\"5\" refX=\"12.25\" markerUnits=\"userSpaceOnUse\" markerWidth=\"14\" markerHeight=\"14\" orient=\"auto\">\u003Ccircle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"\u002F>\u003C\u002Fmarker>\u003Cmarker id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles_flowchart-v2-circleStart-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"-2\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"14\" markerHeight=\"14\" orient=\"auto\">\u003Ccircle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"\u002F>\u003C\u002Fmarker>\u003Cmarker id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles_flowchart-v2-crossEnd\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 11 11\" refX=\"12\" refY=\"5.2\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\">\u003Cpath d=\"M 1,1 l 9,9 M 10,1 l -9,9\" class=\"arrowMarkerPath\" style=\"stroke-width: 2; stroke-dasharray: 1, 0;\"\u002F>\u003C\u002Fmarker>\u003Cmarker id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles_flowchart-v2-crossStart\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 11 11\" refX=\"-1\" refY=\"5.2\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\">\u003Cpath d=\"M 1,1 l 9,9 M 10,1 l -9,9\" class=\"arrowMarkerPath\" style=\"stroke-width: 2; stroke-dasharray: 1, 0;\"\u002F>\u003C\u002Fmarker>\u003Cmarker id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles_flowchart-v2-crossEnd-margin\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 15 15\" refX=\"17.7\" refY=\"7.5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto\">\u003Cpath d=\"M 1,1 L 14,14 M 1,14 L 14,1\" class=\"arrowMarkerPath\" style=\"stroke-width: 2.5;\"\u002F>\u003C\u002Fmarker>\u003Cmarker id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles_flowchart-v2-crossStart-margin\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 15 15\" refX=\"-3.5\" refY=\"7.5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto\">\u003Cpath d=\"M 1,1 L 14,14 M 1,14 L 14,1\" class=\"arrowMarkerPath\" style=\"stroke-width: 2.5; stroke-dasharray: 1, 0;\"\u002F>\u003C\u002Fmarker>\u003Cg class=\"root\">\u003Cg class=\"clusters\"\u002F>\u003Cg class=\"edgePaths\">\u003Cpath d=\"M261.75,98.14L233.084,112.153C204.419,126.167,147.088,154.193,118.423,186.091C89.758,217.99,89.758,253.76,89.758,289.531C89.758,325.302,89.758,361.073,89.758,384.708C89.758,408.344,89.758,419.844,89.758,425.594L89.758,431.344\" id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles-L_C1_B1_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_C1_B1_0\" data-points=\"W3sieCI6MjYxLjc0OTc2MDMyODQ4NTY1LCJ5Ijo5OC4xNDAzODUzMjg0ODU2NH0seyJ4Ijo4OS43NTc4MTI1LCJ5IjoxODIuMjE4NzV9LHsieCI6ODkuNzU3ODEyNSwieSI6Mjg5LjUzMTI1fSx7IngiOjg5Ljc1NzgxMjUsInkiOjM5Ni44NDM3NX0seyJ4Ijo4OS43NTc4MTI1LCJ5Ijo0MzUuMzQzNzV9XQ==\" data-look=\"classic\" marker-end=\"url(#ill-0-snt-2nde-sh-prog-notions-conditionnelles_flowchart-v2-pointEnd)\"\u002F>\u003Cpath d=\"M341.238,109.808L353.293,121.877C365.348,133.945,389.457,158.082,401.512,175.9C413.566,193.719,413.566,205.219,413.566,210.969L413.566,216.719\" id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles-L_C1_C2_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_C1_C2_0\" data-points=\"W3sieCI6MzQxLjIzODQ4NjQ0OTI0MjEsInkiOjEwOS44MDgzODg1NTA3NTc5M30seyJ4Ijo0MTMuNTY2NDA2MjUsInkiOjE4Mi4yMTg3NX0seyJ4Ijo0MTMuNTY2NDA2MjUsInkiOjIyMC43MTg3NX1d\" data-look=\"classic\" marker-end=\"url(#ill-0-snt-2nde-sh-prog-notions-conditionnelles_flowchart-v2-pointEnd)\"\u002F>\u003Cpath d=\"M378.528,323.305L365.812,335.561C353.097,347.818,327.665,372.331,314.95,390.337C302.234,408.344,302.234,419.844,302.234,425.594L302.234,431.344\" id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles-L_C2_B2_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_C2_B2_0\" data-points=\"W3sieCI6Mzc4LjUyNzYzNjQ0MTM0MjMsInkiOjMyMy4zMDQ5ODAxOTEzNDIzfSx7IngiOjMwMi4yMzQzNzUsInkiOjM5Ni44NDM3NX0seyJ4IjozMDIuMjM0Mzc1LCJ5Ijo0MzUuMzQzNzV9XQ==\" data-look=\"classic\" marker-end=\"url(#ill-0-snt-2nde-sh-prog-notions-conditionnelles_flowchart-v2-pointEnd)\"\u002F>\u003Cpath d=\"M448.605,323.305L461.321,335.561C474.036,347.818,499.467,372.331,512.183,390.337C524.898,408.344,524.898,419.844,524.898,425.594L524.898,431.344\" id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles-L_C2_BE_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_C2_BE_0\" data-points=\"W3sieCI6NDQ4LjYwNTE3NjA1ODY1NzcsInkiOjMyMy4zMDQ5ODAxOTEzNDIzfSx7IngiOjUyNC44OTg0Mzc1LCJ5IjozOTYuODQzNzV9LHsieCI6NTI0Ljg5ODQzNzUsInkiOjQzNS4zNDM3NX1d\" data-look=\"classic\" marker-end=\"url(#ill-0-snt-2nde-sh-prog-notions-conditionnelles_flowchart-v2-pointEnd)\"\u002F>\u003Cpath d=\"M89.758,488.344L89.758,493.01C89.758,497.677,89.758,507.01,119.745,518.303C149.733,529.597,209.707,542.849,239.695,549.476L269.682,556.102\" id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles-L_B1_S_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_B1_S_0\" data-points=\"W3sieCI6ODkuNzU3ODEyNSwieSI6NDg4LjM0Mzc1fSx7IngiOjg5Ljc1NzgxMjUsInkiOjUxNi4zNDM3NX0seyJ4IjoyNzMuNTg3OTMxNjM4NTEwMSwieSI6NTU2Ljk2NTExODg2ODM0NjJ9XQ==\" data-look=\"classic\" marker-end=\"url(#ill-0-snt-2nde-sh-prog-notions-conditionnelles_flowchart-v2-pointEnd)\"\u002F>\u003Cpath d=\"M302.234,488.344L302.234,493.01C302.234,497.677,302.234,507.01,302.306,515.761C302.378,524.511,302.521,532.677,302.593,536.761L302.664,540.844\" id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles-L_B2_S_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_B2_S_0\" data-points=\"W3sieCI6MzAyLjIzNDM3NSwieSI6NDg4LjM0Mzc1fSx7IngiOjMwMi4yMzQzNzUsInkiOjUxNi4zNDM3NX0seyJ4IjozMDIuNzM0Mzc1LCJ5Ijo1NDQuODQzNzV9XQ==\" data-look=\"classic\" marker-end=\"url(#ill-0-snt-2nde-sh-prog-notions-conditionnelles_flowchart-v2-pointEnd)\"\u002F>\u003Cpath d=\"M524.898,488.344L524.898,493.01C524.898,497.677,524.898,507.01,493.396,518.355C461.894,529.699,398.889,543.054,367.387,549.731L335.884,556.409\" id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles-L_BE_S_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_BE_S_0\" data-points=\"W3sieCI6NTI0Ljg5ODQzNzUsInkiOjQ4OC4zNDM3NX0seyJ4Ijo1MjQuODk4NDM3NSwieSI6NTE2LjM0Mzc1fSx7IngiOjMzMS45NzE0MzE2NTI2OTYxNCwieSI6NTU3LjIzODAzNTc3MjUzOTV9XQ==\" data-look=\"classic\" marker-end=\"url(#ill-0-snt-2nde-sh-prog-notions-conditionnelles_flowchart-v2-pointEnd)\"\u002F>\u003C\u002Fg>\u003Cg class=\"edgeLabels\">\u003Cg class=\"edgeLabel\" transform=\"translate(89.7578125, 289.53125)\">\u003Cg class=\"label\" data-id=\"L_C1_B1_0\" transform=\"translate(0, -8.500000953674316)\">\u003Cg>\u003Crect class=\"background\" style=\"\" x=\"-11.7265625\" y=\"-1.9999990463256836\" width=\"23.453125\" height=\"21\"\u002F>\u003Ctext y=\"-10.1\" text-anchor=\"middle\" style=\"\">\u003Ctspan class=\"text-outer-tspan row\" x=\"0\" y=\"-0.1em\" dy=\"1.1em\" text-anchor=\"middle\">\u003Ctspan font-style=\"normal\" class=\"text-inner-tspan\" font-weight=\"normal\">oui\u003C\u002Ftspan>\u003C\u002Ftspan>\u003C\u002Ftext>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003Cg class=\"edgeLabel\" transform=\"translate(413.56640625, 182.21875)\">\u003Cg class=\"label\" data-id=\"L_C1_C2_0\" transform=\"translate(0, -8.500000953674316)\">\u003Cg>\u003Crect class=\"background\" style=\"\" x=\"-14.0859375\" y=\"-1.9999990463256836\" width=\"28.171875\" height=\"21\"\u002F>\u003Ctext y=\"-10.1\" text-anchor=\"middle\" style=\"\">\u003Ctspan class=\"text-outer-tspan row\" x=\"0\" y=\"-0.1em\" dy=\"1.1em\" text-anchor=\"middle\">\u003Ctspan font-style=\"normal\" class=\"text-inner-tspan\" font-weight=\"normal\">non\u003C\u002Ftspan>\u003C\u002Ftspan>\u003C\u002Ftext>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003Cg class=\"edgeLabel\" transform=\"translate(302.234375, 396.84375)\">\u003Cg class=\"label\" data-id=\"L_C2_B2_0\" transform=\"translate(0, -8.500000953674316)\">\u003Cg>\u003Crect class=\"background\" style=\"\" x=\"-11.7265625\" y=\"-1.9999990463256836\" width=\"23.453125\" height=\"21\"\u002F>\u003Ctext y=\"-10.1\" text-anchor=\"middle\" style=\"\">\u003Ctspan class=\"text-outer-tspan row\" x=\"0\" y=\"-0.1em\" dy=\"1.1em\" text-anchor=\"middle\">\u003Ctspan font-style=\"normal\" class=\"text-inner-tspan\" font-weight=\"normal\">oui\u003C\u002Ftspan>\u003C\u002Ftspan>\u003C\u002Ftext>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003Cg class=\"edgeLabel\" transform=\"translate(524.8984375, 396.84375)\">\u003Cg class=\"label\" data-id=\"L_C2_BE_0\" transform=\"translate(0, -8.500000953674316)\">\u003Cg>\u003Crect class=\"background\" style=\"\" x=\"-14.0859375\" y=\"-1.9999990463256836\" width=\"28.171875\" height=\"21\"\u002F>\u003Ctext y=\"-10.1\" text-anchor=\"middle\" style=\"\">\u003Ctspan class=\"text-outer-tspan row\" x=\"0\" y=\"-0.1em\" dy=\"1.1em\" text-anchor=\"middle\">\u003Ctspan font-style=\"normal\" class=\"text-inner-tspan\" font-weight=\"normal\">non\u003C\u002Ftspan>\u003C\u002Ftspan>\u003C\u002Ftext>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003Cg class=\"edgeLabel\">\u003Cg class=\"label\" data-id=\"L_B1_S_0\" transform=\"translate(0, 0)\">\u003Ctext y=\"-10.1\" text-anchor=\"middle\">\u003Ctspan class=\"text-outer-tspan row\" x=\"0\" y=\"-0.1em\" dy=\"1.1em\" text-anchor=\"middle\"\u002F>\u003C\u002Ftext>\u003C\u002Fg>\u003C\u002Fg>\u003Cg>\u003Crect class=\"background\" style=\"stroke: none\"\u002F>\u003C\u002Fg>\u003Cg class=\"edgeLabel\">\u003Cg class=\"label\" data-id=\"L_B2_S_0\" transform=\"translate(0, 0)\">\u003Ctext y=\"-10.1\" text-anchor=\"middle\">\u003Ctspan class=\"text-outer-tspan row\" x=\"0\" y=\"-0.1em\" dy=\"1.1em\" text-anchor=\"middle\"\u002F>\u003C\u002Ftext>\u003C\u002Fg>\u003C\u002Fg>\u003Cg>\u003Crect class=\"background\" style=\"stroke: none\"\u002F>\u003C\u002Fg>\u003Cg class=\"edgeLabel\">\u003Cg class=\"label\" data-id=\"L_BE_S_0\" transform=\"translate(0, 0)\">\u003Ctext y=\"-10.1\" text-anchor=\"middle\">\u003Ctspan class=\"text-outer-tspan row\" x=\"0\" y=\"-0.1em\" dy=\"1.1em\" text-anchor=\"middle\"\u002F>\u003C\u002Ftext>\u003C\u002Fg>\u003C\u002Fg>\u003Cg>\u003Crect class=\"background\" style=\"stroke: none\"\u002F>\u003C\u002Fg>\u003C\u002Fg>\u003Cg class=\"nodes\">\u003Cg class=\"node default\" id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles-flowchart-C1-0\" data-look=\"classic\" transform=\"translate(307.328125, 75.859375)\">\u003Cpolygon points=\"67.859375,0 135.71875,-67.859375 67.859375,-135.71875 0,-67.859375\" class=\"label-container\" transform=\"translate(-67.359375, 67.859375)\"\u002F>\u003Cg class=\"label\" style=\"\" transform=\"translate(-41.359375, -10.5)\">\u003Crect\u002F>\u003CforeignObject width=\"82.71875\" height=\"21\">\u003Cdiv xmlns=\"http:\u002F\u002Fwww.w3.org\u002F1999\u002Fxhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\">\u003Cspan class=\"nodeLabel\">\u003Cp>condition 1 ?\u003C\u002Fp>\u003C\u002Fspan>\u003C\u002Fdiv>\u003C\u002FforeignObject>\u003C\u002Fg>\u003C\u002Fg>\u003Cg class=\"node default\" id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles-flowchart-B1-1\" data-look=\"classic\" transform=\"translate(89.7578125, 461.84375)\">\u003Crect class=\"basic label-container\" style=\"\" x=\"-81.7578125\" y=\"-22.5\" width=\"163.515625\" height=\"45\"\u002F>\u003Cg class=\"label\" style=\"\" transform=\"translate(-49.7578125, -10.5)\">\u003Crect\u002F>\u003CforeignObject width=\"99.515625\" height=\"21\">\u003Cdiv xmlns=\"http:\u002F\u002Fwww.w3.org\u002F1999\u002Fxhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\">\u003Cspan class=\"nodeLabel\">\u003Cp>exécuter bloc 1\u003C\u002Fp>\u003C\u002Fspan>\u003C\u002Fdiv>\u003C\u002FforeignObject>\u003C\u002Fg>\u003C\u002Fg>\u003Cg class=\"node default\" id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles-flowchart-C2-2\" data-look=\"classic\" transform=\"translate(413.56640625, 289.53125)\">\u003Cpolygon points=\"68.8125,0 137.625,-68.8125 68.8125,-137.625 0,-68.8125\" class=\"label-container\" transform=\"translate(-68.3125, 68.8125)\"\u002F>\u003Cg class=\"label\" style=\"\" transform=\"translate(-42.3125, -10.5)\">\u003Crect\u002F>\u003CforeignObject width=\"84.625\" height=\"21\">\u003Cdiv xmlns=\"http:\u002F\u002Fwww.w3.org\u002F1999\u002Fxhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\">\u003Cspan class=\"nodeLabel\">\u003Cp>condition 2 ?\u003C\u002Fp>\u003C\u002Fspan>\u003C\u002Fdiv>\u003C\u002FforeignObject>\u003C\u002Fg>\u003C\u002Fg>\u003Cg class=\"node default\" id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles-flowchart-B2-3\" data-look=\"classic\" transform=\"translate(302.234375, 461.84375)\">\u003Crect class=\"basic label-container\" style=\"\" x=\"-82.71875\" y=\"-22.5\" width=\"165.4375\" height=\"45\"\u002F>\u003Cg class=\"label\" style=\"\" transform=\"translate(-50.71875, -10.5)\">\u003Crect\u002F>\u003CforeignObject width=\"101.4375\" height=\"21\">\u003Cdiv xmlns=\"http:\u002F\u002Fwww.w3.org\u002F1999\u002Fxhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\">\u003Cspan class=\"nodeLabel\">\u003Cp>exécuter bloc 2\u003C\u002Fp>\u003C\u002Fspan>\u003C\u002Fdiv>\u003C\u002FforeignObject>\u003C\u002Fg>\u003C\u002Fg>\u003Cg class=\"node default\" id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles-flowchart-BE-4\" data-look=\"classic\" transform=\"translate(524.8984375, 461.84375)\">\u003Crect class=\"basic label-container\" style=\"\" x=\"-91.9453125\" y=\"-22.5\" width=\"183.890625\" height=\"45\"\u002F>\u003Cg class=\"label\" style=\"\" transform=\"translate(-59.9453125, -10.5)\">\u003Crect\u002F>\u003CforeignObject width=\"119.890625\" height=\"21\">\u003Cdiv xmlns=\"http:\u002F\u002Fwww.w3.org\u002F1999\u002Fxhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\">\u003Cspan class=\"nodeLabel\">\u003Cp>exécuter bloc else\u003C\u002Fp>\u003C\u002Fspan>\u003C\u002Fdiv>\u003C\u002FforeignObject>\u003C\u002Fg>\u003C\u002Fg>\u003Cg class=\"node default\" id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles-flowchart-S-5\" data-look=\"classic\" transform=\"translate(302.234375, 562.84375)\">\u003Cg class=\"basic label-container outer-path\">\u003Cpath d=\"M-11.78125 -18.5 C-6.201876497833402 -18.5, -0.6225029956668031 -18.5, 11.78125 -18.5 C11.78125 -18.5, 11.781249999999998 -18.5, 11.781249999999998 -18.5 C12.134380981863437 -18.4886757767394, 12.487511963726874 -18.477351553478794, 12.966549069643188 -18.46198976588122 C13.434627037849824 -18.416834847234448, 13.902705006056461 -18.37167992858767, 14.146977491163359 -18.348115255730054 C14.546188099705752 -18.283573980465427, 14.945398708248145 -18.219032705200803, 15.317684630975386 -18.15884440433471 C15.665264506805844 -18.07951156584707, 16.012844382636302 -18.00017872735943, 16.473859802325883 -17.894954966222045 C16.907951462011006 -17.766118840221118, 17.34204312169613 -17.63728271422019, 17.61075203343698 -17.557531319697368 C17.901033150203087 -17.450705185398213, 18.191314266969197 -17.34387905109906, 18.72368959026842 -17.147960010901404 C19.089814878540313 -16.98588720650423, 19.455940166812205 -16.82381440210706, 19.808099173674826 -16.667924056194753 C20.08476932826352 -16.523585413761523, 20.36143948285221 -16.379246771328297, 20.859524712072847 -16.119396026282708 C21.094536915671522 -15.976930247376185, 21.329549119270197 -15.83446446846966, 21.87364567239515 -15.504629940499052 C22.199486919529537 -15.277337191938352, 22.525328166663925 -15.050044443377653, 22.846294814087496 -14.826152004557198 C23.13951237799622 -14.592318800187064, 23.432729941904945 -14.358485595816932, 23.773475313194083 -14.086750229828988 C24.109771156814002 -13.781335242553808, 24.44606700043392 -13.475920255278629, 24.651377186164495 -13.289462976807961 C24.936283021884453 -12.995274310222976, 25.22118885760441 -12.701085643637992, 25.476392945893334 -12.437566469834366 C25.765245406559806 -12.098263933364901, 26.05409786722628 -11.758961396895435, 26.245132425658554 -11.534561334386572 C26.408865732565577 -11.315173619542279, 26.5725990394726 -11.095785904697983, 26.95443671004368 -10.584158212260142 C27.099183768969176 -10.36178785972294, 27.243930827894676 -10.139417507185737, 27.6013911155989 -9.590262513744715 C27.7613633209791 -9.306215664149823, 27.9213355263593 -9.02216881455493, 28.1833371679005 -8.556958369455453 C28.35071783031823 -8.209388842572586, 28.51809849273596 -7.861819315689721, 28.69788352579253 -7.48849184776429 C28.84611678393309 -7.122352834262023, 28.99435004207365 -6.756213820759757, 29.142915807920563 -6.3892535067942 C29.264798062916828 -6.0221635740455985, 29.38668031791309 -5.6550736412969975, 29.516605281178222 -5.2637603526741055 C29.59001149207046 -4.983830656088949, 29.6634177029627 -4.703900959503792, 29.817416375363738 -4.116637278191818 C29.870482478404845 -3.844154054600584, 29.92354858144595 -3.5716708310093503, 30.044112993167325 -2.9525980581175224 C30.08833304718506 -2.609636051393316, 30.132553101202795 -2.2666740446691094, 30.195763589560165 -1.776425979292116 C30.21735485349465 -1.440124615357969, 30.238946117429133 -1.103823251423822, 30.271744999712727 -0.5929541850756206 C30.271744999712727 -0.19920816577457978, 30.271744999712727 0.19453785352646102, 30.271744999712727 0.592954185075616 C30.25110326456425 0.9144658717218339, 30.230461529415777 1.2359775583680517, 30.195763589560165 1.7764259792921033 C30.154492364755733 2.0965174489501326, 30.1132211399513 2.4166089186081616, 30.044112993167328 2.9525980581175095 C29.98634147621776 3.2492425876391104, 29.92856995926819 3.545887117160712, 29.817416375363738 4.116637278191814 C29.710085971986505 4.525934623560278, 29.602755568609272 4.935231968928742, 29.516605281178222 5.263760352674093 C29.420203843544964 5.554106123342245, 29.323802405911703 5.8444518940103976, 29.14291580792057 6.389253506794188 C29.0090659866386 6.719865153170897, 28.875216165356633 7.0504767995476065, 28.69788352579253 7.488491847764285 C28.532769131926734 7.831355419508685, 28.36765473806094 8.174218991253085, 28.183337167900504 8.556958369455447 C28.007535745379098 8.869111596966595, 27.831734322857695 9.181264824477744, 27.601391115598904 9.590262513744712 C27.460573851391118 9.806595646297872, 27.319756587183335 10.02292877885103, 26.954436710043687 10.584158212260133 C26.708283803664077 10.913980681817714, 26.462130897284467 11.243803151375294, 26.245132425658554 11.534561334386567 C26.053453224886283 11.759718630469177, 25.861774024114016 11.984875926551787, 25.476392945893345 12.437566469834355 C25.301870982089433 12.617774725981594, 25.127349018285525 12.797982982128833, 24.651377186164503 13.289462976807956 C24.473604900873166 13.450911062712628, 24.29583261558183 13.6123591486173, 23.773475313194098 14.086750229828976 C23.51011484204333 14.296773197255245, 23.246754370892564 14.506796164681516, 22.8462948140875 14.826152004557196 C22.590057058397097 15.004892370573154, 22.333819302706697 15.183632736589113, 21.87364567239516 15.504629940499047 C21.58467287312047 15.679806949612027, 21.295700073845786 15.854983958725008, 20.859524712072847 16.119396026282704 C20.487944106619025 16.313249390139227, 20.116363501165203 16.50710275399575, 19.808099173674826 16.667924056194753 C19.481133968998122 16.812661853226942, 19.154168764321415 16.95739965025913, 18.723689590268428 17.1479600109014 C18.338127861342336 17.289850291239752, 17.952566132416244 17.431740571578107, 17.610752033436995 17.557531319697365 C17.370808578325683 17.628745277685507, 17.13086512321437 17.699959235673646, 16.473859802325904 17.89495496622204 C16.15642744936362 17.967406829345993, 15.838995096401336 18.039858692469945, 15.317684630975393 18.158844404334708 C14.873797331221578 18.230608660561483, 14.429910031467763 18.302372916788258, 14.146977491163373 18.34811525573005 C13.910891511308982 18.370890186271673, 13.674805531454592 18.393665116813292, 12.966549069643188 18.46198976588122 C12.551306786269867 18.47530577768893, 12.136064502896545 18.48862178949664, 11.781250000000004 18.5 C11.781250000000002 18.5, 11.781250000000002 18.5, 11.78125 18.5 C5.870327748664901 18.5, -0.040594502670197485 18.5, -11.781249999999996 18.5 C-12.0523856954227 18.49130520598141, -12.323521390845404 18.482610411962817, -12.96654906964318 18.46198976588122 C-13.302865241753857 18.42954574923708, -13.639181413864534 18.397101732592937, -14.146977491163364 18.34811525573005 C-14.611422557404147 18.273027379245523, -15.075867623644932 18.197939502760995, -15.317684630975386 18.158844404334708 C-15.611214196266529 18.091848196516427, -15.904743761557672 18.024851988698146, -16.47385980232588 17.894954966222045 C-16.833923421747464 17.788089973990225, -17.193987041169052 17.681224981758408, -17.610752033436974 17.557531319697375 C-18.012009484230532 17.40986486862213, -18.41326693502409 17.262198417546887, -18.72368959026842 17.147960010901404 C-19.027601251721784 17.013427333595125, -19.331512913175146 16.87889465628885, -19.808099173674822 16.667924056194757 C-20.15513051701379 16.486878026659, -20.50216186035276 16.305831997123246, -20.859524712072844 16.119396026282708 C-21.165848913327142 15.93370049532153, -21.47217311458144 15.748004964360353, -21.87364567239514 15.50462994049906 C-22.207790524222126 15.271544956762055, -22.541935376049114 15.038459973025052, -22.846294814087493 14.8261520045572 C-23.095330712673675 14.627552502558304, -23.344366611259854 14.428953000559408, -23.773475313194083 14.086750229828992 C-24.119818608295176 13.772210412959607, -24.466161903396273 13.457670596090223, -24.65137718616449 13.289462976807968 C-24.96897172405022 12.961520541444461, -25.286566261935953 12.633578106080954, -25.476392945893338 12.43756646983436 C-25.684507323216266 12.193103480187307, -25.8926217005392 11.948640490540255, -26.24513242565855 11.534561334386574 C-26.47554834982803 11.225824987321992, -26.705964273997512 10.917088640257411, -26.95443671004368 10.584158212260144 C-27.13547120462709 10.306040614011545, -27.316505699210506 10.027923015762946, -27.601391115598897 9.590262513744724 C-27.736706661709835 9.349996059439894, -27.872022207820777 9.109729605135065, -28.1833371679005 8.556958369455455 C-28.295912771148217 8.323192720579536, -28.408488374395933 8.089427071703616, -28.69788352579253 7.488491847764292 C-28.7943371448225 7.250249543956405, -28.89079076385247 7.0120072401485185, -29.142915807920563 6.389253506794202 C-29.289234032858094 5.948566325925582, -29.435552257795628 5.507879145056963, -29.516605281178222 5.2637603526741 C-29.5962881491105 4.959895042474914, -29.675971017042773 4.656029732275727, -29.817416375363734 4.116637278191821 C-29.88784796085686 3.7549859724054806, -29.95827954634999 3.3933346666191406, -30.044112993167325 2.9525980581175246 C-30.078851696003714 2.6831715388512865, -30.1135903988401 2.4137450195850483, -30.195763589560165 1.7764259792921264 C-30.221976993049115 1.368131060873312, -30.24819039653806 0.9598361424544973, -30.271744999712727 0.5929541850756229 C-30.271744999712727 0.23796692697652266, -30.271744999712727 -0.11702033112257759, -30.271744999712727 -0.5929541850756139 C-30.247519873536206 -0.9702800794448319, -30.22329474735968 -1.34760597381405, -30.195763589560165 -1.776425979292101 C-30.152661720004524 -2.110715568138832, -30.10955985044888 -2.4450051569855624, -30.044112993167328 -2.9525980581175157 C-29.975180759700066 -3.3065505081392113, -29.9062485262328 -3.6605029581609063, -29.817416375363738 -4.116637278191813 C-29.74956386997556 -4.375388288698799, -29.68171136458738 -4.634139299205787, -29.516605281178226 -5.263760352674091 C-29.432442829655383 -5.517244247195287, -29.34828037813254 -5.770728141716483, -29.142915807920573 -6.389253506794178 C-29.013516912782695 -6.708871279542184, -28.884118017644813 -7.02848905229019, -28.69788352579253 -7.488491847764283 C-28.542681197160327 -7.810772803966902, -28.387478868528127 -8.133053760169522, -28.183337167900504 -8.556958369455446 C-27.96451562011418 -8.945498185634516, -27.745694072327858 -9.334038001813585, -27.6013911155989 -9.590262513744717 C-27.43453123566385 -9.846604097476447, -27.267671355728805 -10.102945681208176, -26.954436710043684 -10.584158212260139 C-26.8123438321069 -10.774549723767944, -26.670250954170122 -10.964941235275749, -26.245132425658554 -11.534561334386567 C-26.01174329115418 -11.808713491993373, -25.7783541566498 -12.082865649600178, -25.476392945893345 -12.437566469834355 C-25.20097396308415 -12.721959181903868, -24.925554980274956 -13.006351893973383, -24.65137718616451 -13.28946297680795 C-24.374425424586306 -13.540983238931213, -24.0974736630081 -13.792503501054474, -23.773475313194098 -14.086750229828974 C-23.578079669655814 -14.242573055854308, -23.38268402611753 -14.39839588187964, -22.8462948140875 -14.826152004557194 C-22.505906637278596 -15.0635920615324, -22.165518460469695 -15.301032118507607, -21.873645672395163 -15.504629940499045 C-21.526270368439388 -15.715210891160915, -21.178895064483612 -15.925791841822782, -20.85952471207285 -16.1193960262827 C-20.58283906937234 -16.263742748853943, -20.306153426671834 -16.40808947142519, -19.80809917367483 -16.667924056194753 C-19.459731045626793 -16.822136292508265, -19.111362917578756 -16.976348528821777, -18.72368959026843 -17.147960010901397 C-18.402593938255727 -17.266126179017743, -18.081498286243026 -17.384292347134085, -17.610752033436995 -17.557531319697365 C-17.304387584270845 -17.648458680070068, -16.998023135104695 -17.73938604044277, -16.473859802325904 -17.894954966222038 C-16.17010441063839 -17.96428515218554, -15.866349018950878 -18.033615338149037, -15.317684630975394 -18.158844404334708 C-15.036520506099627 -18.204300839584267, -14.755356381223859 -18.24975727483383, -14.146977491163373 -18.34811525573005 C-13.674991004816823 -18.393647224421102, -13.203004518470275 -18.439179193112157, -12.96654906964319 -18.46198976588122 C-12.537413653035612 -18.47575130343041, -12.108278236428037 -18.4895128409796, -11.781250000000005 -18.5 C-11.781250000000004 -18.5, -11.781250000000002 -18.5, -11.78125 -18.5\" stroke=\"none\" stroke-width=\"0\" fill=\"#eef0fc\" style=\"\"\u002F>\u003Cpath d=\"M-11.78125 -18.5 C-5.1422198482581924 -18.5, 1.496810303483615 -18.5, 11.78125 -18.5 M-11.78125 -18.5 C-5.608470771256218 -18.5, 0.5643084574875648 -18.5, 11.78125 -18.5 M11.78125 -18.5 C11.78125 -18.5, 11.781249999999998 -18.5, 11.781249999999998 -18.5 M11.78125 -18.5 C11.78125 -18.5, 11.781249999999998 -18.5, 11.781249999999998 -18.5 M11.781249999999998 -18.5 C12.044316746176355 -18.491563961478484, 12.307383492352711 -18.483127922956964, 12.966549069643188 -18.46198976588122 M11.781249999999998 -18.5 C12.038555329655773 -18.49174871889238, 12.29586065931155 -18.48349743778476, 12.966549069643188 -18.46198976588122 M12.966549069643188 -18.46198976588122 C13.331579353760159 -18.426775733385604, 13.69660963787713 -18.391561700889987, 14.146977491163359 -18.348115255730054 M12.966549069643188 -18.46198976588122 C13.215015622416555 -18.438020496359922, 13.463482175189924 -18.414051226838627, 14.146977491163359 -18.348115255730054 M14.146977491163359 -18.348115255730054 C14.384190960249187 -18.309764421666184, 14.621404429335016 -18.271413587602318, 15.317684630975386 -18.15884440433471 M14.146977491163359 -18.348115255730054 C14.443537806527155 -18.30016968380163, 14.740098121890954 -18.252224111873208, 15.317684630975386 -18.15884440433471 M15.317684630975386 -18.15884440433471 C15.603246296382112 -18.093666817669643, 15.88880796178884 -18.028489231004574, 16.473859802325883 -17.894954966222045 M15.317684630975386 -18.15884440433471 C15.688839868843326 -18.07413064330563, 16.059995106711266 -17.989416882276547, 16.473859802325883 -17.894954966222045 M16.473859802325883 -17.894954966222045 C16.785307654971465 -17.802518878379974, 17.096755507617047 -17.710082790537903, 17.61075203343698 -17.557531319697368 M16.473859802325883 -17.894954966222045 C16.82960576431833 -17.789371432051347, 17.185351726310774 -17.68378789788065, 17.61075203343698 -17.557531319697368 M17.61075203343698 -17.557531319697368 C18.046060051769242 -17.397333945007887, 18.4813680701015 -17.237136570318405, 18.72368959026842 -17.147960010901404 M17.61075203343698 -17.557531319697368 C17.84128468076937 -17.47269317445862, 18.07181732810176 -17.387855029219867, 18.72368959026842 -17.147960010901404 M18.72368959026842 -17.147960010901404 C18.94288468389321 -17.050928845145137, 19.162079777518002 -16.953897679388874, 19.808099173674826 -16.667924056194753 M18.72368959026842 -17.147960010901404 C18.95632534945162 -17.04497906120561, 19.18896110863482 -16.94199811150981, 19.808099173674826 -16.667924056194753 M19.808099173674826 -16.667924056194753 C20.211303915227447 -16.457572400791715, 20.614508656780067 -16.247220745388677, 20.859524712072847 -16.119396026282708 M19.808099173674826 -16.667924056194753 C20.13280518399024 -16.49852513859733, 20.457511194305653 -16.329126220999903, 20.859524712072847 -16.119396026282708 M20.859524712072847 -16.119396026282708 C21.08152438489004 -15.984818520006035, 21.303524057707236 -15.850241013729365, 21.87364567239515 -15.504629940499052 M20.859524712072847 -16.119396026282708 C21.210502606081807 -15.906631164359426, 21.56148050009077 -15.693866302436145, 21.87364567239515 -15.504629940499052 M21.87364567239515 -15.504629940499052 C22.08817948482002 -15.354980439970523, 22.30271329724489 -15.205330939441993, 22.846294814087496 -14.826152004557198 M21.87364567239515 -15.504629940499052 C22.246705509331218 -15.244399547752508, 22.619765346267286 -14.984169155005963, 22.846294814087496 -14.826152004557198 M22.846294814087496 -14.826152004557198 C23.14419340510228 -14.588585805637347, 23.442091996117057 -14.351019606717497, 23.773475313194083 -14.086750229828988 M22.846294814087496 -14.826152004557198 C23.18500174150286 -14.556042243313321, 23.52370866891822 -14.285932482069445, 23.773475313194083 -14.086750229828988 M23.773475313194083 -14.086750229828988 C24.114611357990462 -13.776939499910055, 24.45574740278684 -13.46712876999112, 24.651377186164495 -13.289462976807961 M23.773475313194083 -14.086750229828988 C24.03208908254341 -13.851884047051307, 24.290702851892735 -13.617017864273624, 24.651377186164495 -13.289462976807961 M24.651377186164495 -13.289462976807961 C24.90143048391927 -13.031262417118612, 25.15148378167404 -12.773061857429262, 25.476392945893334 -12.437566469834366 M24.651377186164495 -13.289462976807961 C24.821645949346813 -13.113646499496781, 24.991914712529134 -12.9378300221856, 25.476392945893334 -12.437566469834366 M25.476392945893334 -12.437566469834366 C25.772204377476047 -12.09008953015002, 26.06801580905876 -11.742612590465678, 26.245132425658554 -11.534561334386572 M25.476392945893334 -12.437566469834366 C25.754581040636744 -12.11079090439774, 26.032769135380157 -11.784015338961114, 26.245132425658554 -11.534561334386572 M26.245132425658554 -11.534561334386572 C26.51958582652593 -11.166818780443467, 26.79403922739331 -10.799076226500363, 26.95443671004368 -10.584158212260142 M26.245132425658554 -11.534561334386572 C26.48301600845023 -11.21581900508594, 26.720899591241913 -10.897076675785307, 26.95443671004368 -10.584158212260142 M26.95443671004368 -10.584158212260142 C27.15220603545154 -10.280331419933901, 27.349975360859407 -9.97650462760766, 27.6013911155989 -9.590262513744715 M26.95443671004368 -10.584158212260142 C27.191324655319068 -10.220234714997133, 27.428212600594456 -9.856311217734124, 27.6013911155989 -9.590262513744715 M27.6013911155989 -9.590262513744715 C27.777561708661786 -9.277453786554599, 27.95373230172467 -8.964645059364482, 28.1833371679005 -8.556958369455453 M27.6013911155989 -9.590262513744715 C27.76177829341216 -9.305478838574412, 27.92216547122542 -9.02069516340411, 28.1833371679005 -8.556958369455453 M28.1833371679005 -8.556958369455453 C28.375601835489448 -8.157716673402135, 28.5678665030784 -7.758474977348816, 28.69788352579253 -7.48849184776429 M28.1833371679005 -8.556958369455453 C28.37155148619115 -8.166127310383642, 28.559765804481803 -7.775296251311829, 28.69788352579253 -7.48849184776429 M28.69788352579253 -7.48849184776429 C28.803378569464787 -7.227917050285901, 28.90887361313704 -6.967342252807512, 29.142915807920563 -6.3892535067942 M28.69788352579253 -7.48849184776429 C28.87316391831555 -7.055545889416576, 29.04844431083857 -6.622599931068864, 29.142915807920563 -6.3892535067942 M29.142915807920563 -6.3892535067942 C29.275383207657832 -5.9902828045994685, 29.407850607395105 -5.591312102404737, 29.516605281178222 -5.2637603526741055 M29.142915807920563 -6.3892535067942 C29.268766939406934 -6.010209950411991, 29.394618070893305 -5.631166394029782, 29.516605281178222 -5.2637603526741055 M29.516605281178222 -5.2637603526741055 C29.635984598786365 -4.8085152753107145, 29.755363916394508 -4.3532701979473245, 29.817416375363738 -4.116637278191818 M29.516605281178222 -5.2637603526741055 C29.618850683286606 -4.873854320997247, 29.72109608539499 -4.48394828932039, 29.817416375363738 -4.116637278191818 M29.817416375363738 -4.116637278191818 C29.89620804891069 -3.7120586871543186, 29.97499972245764 -3.3074800961168194, 30.044112993167325 -2.9525980581175224 M29.817416375363738 -4.116637278191818 C29.86556412989977 -3.8694087346808086, 29.913711884435806 -3.622180191169799, 30.044112993167325 -2.9525980581175224 M30.044112993167325 -2.9525980581175224 C30.10081588064049 -2.5128216601272766, 30.157518768113654 -2.0730452621370308, 30.195763589560165 -1.776425979292116 M30.044112993167325 -2.9525980581175224 C30.07462952344219 -2.715917875476177, 30.105146053717053 -2.4792376928348316, 30.195763589560165 -1.776425979292116 M30.195763589560165 -1.776425979292116 C30.213043348132217 -1.5072797915623295, 30.230323106704272 -1.238133603832543, 30.271744999712727 -0.5929541850756206 M30.195763589560165 -1.776425979292116 C30.22610942737246 -1.3037650606462476, 30.256455265184755 -0.8311041420003792, 30.271744999712727 -0.5929541850756206 M30.271744999712727 -0.5929541850756206 C30.271744999712727 -0.2609272916498154, 30.271744999712727 0.07109960177598984, 30.271744999712727 0.592954185075616 M30.271744999712727 -0.5929541850756206 C30.271744999712727 -0.3524599137131755, 30.271744999712727 -0.11196564235073037, 30.271744999712727 0.592954185075616 M30.271744999712727 0.592954185075616 C30.24361040181194 1.031173257219034, 30.215475803911154 1.469392329362452, 30.195763589560165 1.7764259792921033 M30.271744999712727 0.592954185075616 C30.2425666537924 1.0474304751215666, 30.213388307872076 1.5019067651675173, 30.195763589560165 1.7764259792921033 M30.195763589560165 1.7764259792921033 C30.14809780375904 2.1461124012915835, 30.100432017957917 2.515798823291064, 30.044112993167328 2.9525980581175095 M30.195763589560165 1.7764259792921033 C30.160140138653542 2.052714429877832, 30.12451668774692 2.3290028804635603, 30.044112993167328 2.9525980581175095 M30.044112993167328 2.9525980581175095 C29.992471476445502 3.217766332045671, 29.940829959723672 3.4829346059738326, 29.817416375363738 4.116637278191814 M30.044112993167328 2.9525980581175095 C29.987103420525376 3.2453301646564845, 29.930093847883427 3.53806227119546, 29.817416375363738 4.116637278191814 M29.817416375363738 4.116637278191814 C29.746947774092174 4.385364596125267, 29.676479172820613 4.65409191405872, 29.516605281178222 5.263760352674093 M29.817416375363738 4.116637278191814 C29.737308326674974 4.422123986889999, 29.657200277986206 4.727610695588183, 29.516605281178222 5.263760352674093 M29.516605281178222 5.263760352674093 C29.375144342241576 5.689818162011476, 29.23368340330493 6.115875971348859, 29.14291580792057 6.389253506794188 M29.516605281178222 5.263760352674093 C29.409021490062408 5.587785590365629, 29.301437698946593 5.911810828057164, 29.14291580792057 6.389253506794188 M29.14291580792057 6.389253506794188 C28.986714851306626 6.775072889570682, 28.83051389469268 7.160892272347176, 28.69788352579253 7.488491847764285 M29.14291580792057 6.389253506794188 C29.019551958371316 6.6939646002586235, 28.89618810882206 6.998675693723059, 28.69788352579253 7.488491847764285 M28.69788352579253 7.488491847764285 C28.55869088129046 7.7775283523183205, 28.419498236788392 8.066564856872356, 28.183337167900504 8.556958369455447 M28.69788352579253 7.488491847764285 C28.56512517015826 7.764167413812607, 28.43236681452399 8.039842979860929, 28.183337167900504 8.556958369455447 M28.183337167900504 8.556958369455447 C28.01318921530796 8.859073288631993, 27.84304126271542 9.161188207808538, 27.601391115598904 9.590262513744712 M28.183337167900504 8.556958369455447 C28.054925980082384 8.784965436469287, 27.926514792264264 9.012972503483127, 27.601391115598904 9.590262513744712 M27.601391115598904 9.590262513744712 C27.390755694333837 9.913855084338104, 27.180120273068773 10.237447654931495, 26.954436710043687 10.584158212260133 M27.601391115598904 9.590262513744712 C27.458338426049576 9.810029859918238, 27.315285736500243 10.029797206091764, 26.954436710043687 10.584158212260133 M26.954436710043687 10.584158212260133 C26.693513541340327 10.933771487732962, 26.432590372636966 11.283384763205788, 26.245132425658554 11.534561334386567 M26.954436710043687 10.584158212260133 C26.723884561014728 10.893077088226075, 26.493332411985765 11.201995964192019, 26.245132425658554 11.534561334386567 M26.245132425658554 11.534561334386567 C25.980284296472817 11.845667017213605, 25.715436167287084 12.156772700040646, 25.476392945893345 12.437566469834355 M26.245132425658554 11.534561334386567 C26.072169516454945 11.737733409405468, 25.899206607251337 11.940905484424368, 25.476392945893345 12.437566469834355 M25.476392945893345 12.437566469834355 C25.1793529052011 12.744284699289983, 24.882312864508854 13.051002928745612, 24.651377186164503 13.289462976807956 M25.476392945893345 12.437566469834355 C25.30955640435268 12.609838896509888, 25.14271986281202 12.782111323185424, 24.651377186164503 13.289462976807956 M24.651377186164503 13.289462976807956 C24.4262841925152 13.493886478005999, 24.2011911988659 13.698309979204042, 23.773475313194098 14.086750229828976 M24.651377186164503 13.289462976807956 C24.399618050040836 13.51810396305375, 24.147858913917165 13.746744949299545, 23.773475313194098 14.086750229828976 M23.773475313194098 14.086750229828976 C23.4529114188854 14.342391404976675, 23.1323475245767 14.598032580124375, 22.8462948140875 14.826152004557196 M23.773475313194098 14.086750229828976 C23.443010875543866 14.350286824827025, 23.11254643789363 14.613823419825076, 22.8462948140875 14.826152004557196 M22.8462948140875 14.826152004557196 C22.50691178852104 15.062890911537968, 22.167528762954586 15.29962981851874, 21.87364567239516 15.504629940499047 M22.8462948140875 14.826152004557196 C22.632477379752416 14.975301790741797, 22.418659945417335 15.124451576926399, 21.87364567239516 15.504629940499047 M21.87364567239516 15.504629940499047 C21.579726023550407 15.682805758892316, 21.285806374705654 15.860981577285585, 20.859524712072847 16.119396026282704 M21.87364567239516 15.504629940499047 C21.59771643654975 15.671899864808712, 21.321787200704343 15.839169789118376, 20.859524712072847 16.119396026282704 M20.859524712072847 16.119396026282704 C20.486004013315856 16.3142615355728, 20.11248331455886 16.5091270448629, 19.808099173674826 16.667924056194753 M20.859524712072847 16.119396026282704 C20.60043259191076 16.254564219414842, 20.341340471748673 16.38973241254698, 19.808099173674826 16.667924056194753 M19.808099173674826 16.667924056194753 C19.467642775120662 16.818634004554447, 19.127186376566495 16.96934395291414, 18.723689590268428 17.1479600109014 M19.808099173674826 16.667924056194753 C19.50810571334858 16.800722262091362, 19.208112253022335 16.93352046798797, 18.723689590268428 17.1479600109014 M18.723689590268428 17.1479600109014 C18.308965712247097 17.300582231678753, 17.894241834225767 17.453204452456106, 17.610752033436995 17.557531319697365 M18.723689590268428 17.1479600109014 C18.346032101212177 17.28694145790166, 17.968374612155927 17.42592290490192, 17.610752033436995 17.557531319697365 M17.610752033436995 17.557531319697365 C17.179629581175945 17.685486200520515, 16.748507128914895 17.813441081343665, 16.473859802325904 17.89495496622204 M17.610752033436995 17.557531319697365 C17.354640103473006 17.633543996151722, 17.098528173509013 17.709556672606084, 16.473859802325904 17.89495496622204 M16.473859802325904 17.89495496622204 C16.06890492682815 17.987383273976878, 15.663950051330398 18.079811581731715, 15.317684630975393 18.158844404334708 M16.473859802325904 17.89495496622204 C16.043191116094754 17.99325228347848, 15.612522429863605 18.09154960073492, 15.317684630975393 18.158844404334708 M15.317684630975393 18.158844404334708 C14.87617658569965 18.230224001148862, 14.434668540423907 18.301603597963016, 14.146977491163373 18.34811525573005 M15.317684630975393 18.158844404334708 C14.932921667235416 18.221049896430838, 14.548158703495439 18.28325538852697, 14.146977491163373 18.34811525573005 M14.146977491163373 18.34811525573005 C13.760476608881453 18.385400531008468, 13.373975726599532 18.422685806286886, 12.966549069643188 18.46198976588122 M14.146977491163373 18.34811525573005 C13.82315976793 18.379353562042585, 13.499342044696624 18.410591868355116, 12.966549069643188 18.46198976588122 M12.966549069643188 18.46198976588122 C12.64051037133703 18.47244519234007, 12.31447167303087 18.482900618798922, 11.781250000000004 18.5 M12.966549069643188 18.46198976588122 C12.533880729134337 18.475864597423506, 12.101212388625488 18.489739428965787, 11.781250000000004 18.5 M11.781250000000004 18.5 C11.781250000000002 18.5, 11.781250000000002 18.5, 11.78125 18.5 M11.781250000000004 18.5 C11.781250000000002 18.5, 11.78125 18.5, 11.78125 18.5 M11.78125 18.5 C5.344916473892707 18.5, -1.0914170522145863 18.5, -11.781249999999996 18.5 M11.78125 18.5 C2.885504216220573 18.5, -6.010241567558854 18.5, -11.781249999999996 18.5 M-11.781249999999996 18.5 C-12.038742611725846 18.491742713120917, -12.296235223451697 18.48348542624183, -12.96654906964318 18.46198976588122 M-11.781249999999996 18.5 C-12.081712831621775 18.490364741805312, -12.382175663243553 18.480729483610624, -12.96654906964318 18.46198976588122 M-12.96654906964318 18.46198976588122 C-13.404906930885307 18.419701910209653, -13.843264792127435 18.377414054538086, -14.146977491163364 18.34811525573005 M-12.96654906964318 18.46198976588122 C-13.384002480641282 18.421718537383413, -13.801455891639383 18.38144730888561, -14.146977491163364 18.34811525573005 M-14.146977491163364 18.34811525573005 C-14.609862743892183 18.273279557797604, -15.072747996621002 18.198443859865154, -15.317684630975386 18.158844404334708 M-14.146977491163364 18.34811525573005 C-14.60305057586943 18.27438089629437, -15.059123660575498 18.200646536858688, -15.317684630975386 18.158844404334708 M-15.317684630975386 18.158844404334708 C-15.59920426735211 18.094589384419034, -15.880723903728837 18.030334364503357, -16.47385980232588 17.894954966222045 M-15.317684630975386 18.158844404334708 C-15.674798021409257 18.077335603350836, -16.03191141184313 17.995826802366963, -16.47385980232588 17.894954966222045 M-16.47385980232588 17.894954966222045 C-16.776806650645593 17.805041931841213, -17.07975349896531 17.715128897460378, -17.610752033436974 17.557531319697375 M-16.47385980232588 17.894954966222045 C-16.72145782039118 17.821469174128783, -16.969055838456477 17.74798338203552, -17.610752033436974 17.557531319697375 M-17.610752033436974 17.557531319697375 C-17.956175026089618 17.43041246534606, -18.301598018742265 17.303293610994746, -18.72368959026842 17.147960010901404 M-17.610752033436974 17.557531319697375 C-17.889983254726232 17.454771649077813, -18.169214476015494 17.35201197845825, -18.72368959026842 17.147960010901404 M-18.72368959026842 17.147960010901404 C-19.128464986446406 16.96877795024892, -19.533240382624395 16.789595889596434, -19.808099173674822 16.667924056194757 M-18.72368959026842 17.147960010901404 C-19.064075113024302 16.997281437155156, -19.404460635780183 16.846602863408908, -19.808099173674822 16.667924056194757 M-19.808099173674822 16.667924056194757 C-20.219952623950164 16.453060374990837, -20.631806074225505 16.238196693786914, -20.859524712072844 16.119396026282708 M-19.808099173674822 16.667924056194757 C-20.14004001534867 16.494750731711765, -20.471980857022523 16.321577407228773, -20.859524712072844 16.119396026282708 M-20.859524712072844 16.119396026282708 C-21.14373069891714 15.94710868687793, -21.427936685761434 15.774821347473154, -21.87364567239514 15.50462994049906 M-20.859524712072844 16.119396026282708 C-21.088657479822583 15.98049439593921, -21.31779024757232 15.841592765595712, -21.87364567239514 15.50462994049906 M-21.87364567239514 15.50462994049906 C-22.210335228583496 15.269769881158041, -22.54702478477185 15.034909821817022, -22.846294814087493 14.8261520045572 M-21.87364567239514 15.50462994049906 C-22.258807235226854 15.235957907642982, -22.643968798058573 14.967285874786903, -22.846294814087493 14.8261520045572 M-22.846294814087493 14.8261520045572 C-23.204382641240393 14.54058649152004, -23.562470468393293 14.255020978482882, -23.773475313194083 14.086750229828992 M-22.846294814087493 14.8261520045572 C-23.21630056416274 14.531082265138718, -23.586306314237987 14.236012525720238, -23.773475313194083 14.086750229828992 M-23.773475313194083 14.086750229828992 C-23.981473349195568 13.897851916858903, -24.189471385197052 13.708953603888814, -24.65137718616449 13.289462976807968 M-23.773475313194083 14.086750229828992 C-24.05634943436232 13.829851437423109, -24.33922355553056 13.572952645017226, -24.65137718616449 13.289462976807968 M-24.65137718616449 13.289462976807968 C-24.844650958689627 13.089891938603934, -25.037924731214762 12.8903209003999, -25.476392945893338 12.43756646983436 M-24.65137718616449 13.289462976807968 C-24.908636887433563 13.023821213833372, -25.165896588702633 12.758179450858776, -25.476392945893338 12.43756646983436 M-25.476392945893338 12.43756646983436 C-25.65740558464962 12.224938724440303, -25.838418223405903 12.012310979046244, -26.24513242565855 11.534561334386574 M-25.476392945893338 12.43756646983436 C-25.77325901442004 12.088850693585064, -26.070125082946742 11.740134917335768, -26.24513242565855 11.534561334386574 M-26.24513242565855 11.534561334386574 C-26.48765981624856 11.209596725695777, -26.73018720683857 10.884632117004978, -26.95443671004368 10.584158212260144 M-26.24513242565855 11.534561334386574 C-26.39158865781941 11.338323325728254, -26.538044889980267 11.142085317069935, -26.95443671004368 10.584158212260144 M-26.95443671004368 10.584158212260144 C-27.116778381047695 10.334757810755459, -27.27912005205171 10.085357409250772, -27.601391115598897 9.590262513744724 M-26.95443671004368 10.584158212260144 C-27.10236085868257 10.35690699675513, -27.250285007321455 10.129655781250117, -27.601391115598897 9.590262513744724 M-27.601391115598897 9.590262513744724 C-27.758174240933716 9.311878198699777, -27.91495736626854 9.033493883654828, -28.1833371679005 8.556958369455455 M-27.601391115598897 9.590262513744724 C-27.7245694624416 9.371546885765344, -27.847747809284304 9.152831257785964, -28.1833371679005 8.556958369455455 M-28.1833371679005 8.556958369455455 C-28.32836959937277 8.255795422306376, -28.47340203084504 7.954632475157297, -28.69788352579253 7.488491847764292 M-28.1833371679005 8.556958369455455 C-28.368392984127937 8.172686007499028, -28.553448800355373 7.788413645542599, -28.69788352579253 7.488491847764292 M-28.69788352579253 7.488491847764292 C-28.79651142259519 7.244879035821057, -28.89513931939785 7.001266223877822, -29.142915807920563 6.389253506794202 M-28.69788352579253 7.488491847764292 C-28.846655987544693 7.121020990916577, -28.995428449296853 6.753550134068862, -29.142915807920563 6.389253506794202 M-29.142915807920563 6.389253506794202 C-29.26745141785615 6.014172091723054, -29.39198702779174 5.639090676651906, -29.516605281178222 5.2637603526741 M-29.142915807920563 6.389253506794202 C-29.25537455371665 6.050545682324239, -29.367833299512736 5.711837857854277, -29.516605281178222 5.2637603526741 M-29.516605281178222 5.2637603526741 C-29.582554238739483 5.012268395034006, -29.64850319630074 4.760776437393912, -29.817416375363734 4.116637278191821 M-29.516605281178222 5.2637603526741 C-29.583381813286945 5.009112494611453, -29.650158345395667 4.754464636548805, -29.817416375363734 4.116637278191821 M-29.817416375363734 4.116637278191821 C-29.88431840928423 3.7731094737599586, -29.951220443204722 3.4295816693280967, -30.044112993167325 2.9525980581175246 M-29.817416375363734 4.116637278191821 C-29.889797739005193 3.7449742736995506, -29.96217910264665 3.3733112692072806, -30.044112993167325 2.9525980581175246 M-30.044112993167325 2.9525980581175246 C-30.08372477456952 2.6453769037930908, -30.123336555971715 2.338155749468657, -30.195763589560165 1.7764259792921264 M-30.044112993167325 2.9525980581175246 C-30.077337423917584 2.6949159341244613, -30.110561854667843 2.4372338101313984, -30.195763589560165 1.7764259792921264 M-30.195763589560165 1.7764259792921264 C-30.220767726127395 1.3869663692817629, -30.245771862694625 0.9975067592713993, -30.271744999712727 0.5929541850756229 M-30.195763589560165 1.7764259792921264 C-30.21135974711468 1.5335032363887844, -30.226955904669193 1.2905804934854423, -30.271744999712727 0.5929541850756229 M-30.271744999712727 0.5929541850756229 C-30.271744999712727 0.2415908388100872, -30.271744999712727 -0.10977250745544853, -30.271744999712727 -0.5929541850756139 M-30.271744999712727 0.5929541850756229 C-30.271744999712727 0.3357872574743562, -30.271744999712727 0.07862032987308953, -30.271744999712727 -0.5929541850756139 M-30.271744999712727 -0.5929541850756139 C-30.24786609896758 -0.9648873388829813, -30.22398719822244 -1.3368204926903484, -30.195763589560165 -1.776425979292101 M-30.271744999712727 -0.5929541850756139 C-30.25470952138914 -0.858295510756052, -30.237674043065557 -1.1236368364364901, -30.195763589560165 -1.776425979292101 M-30.195763589560165 -1.776425979292101 C-30.151315616458753 -2.1211556814215964, -30.106867643357344 -2.4658853835510914, -30.044112993167328 -2.9525980581175157 M-30.195763589560165 -1.776425979292101 C-30.152173184988843 -2.1145045492482724, -30.108582780417525 -2.4525831192044434, -30.044112993167328 -2.9525980581175157 M-30.044112993167328 -2.9525980581175157 C-29.98329350775003 -3.264893261532548, -29.922474022332732 -3.57718846494758, -29.817416375363738 -4.116637278191813 M-30.044112993167328 -2.9525980581175157 C-29.9656120147418 -3.3556839911449377, -29.887111036316274 -3.75876992417236, -29.817416375363738 -4.116637278191813 M-29.817416375363738 -4.116637278191813 C-29.70043390465784 -4.562742139516934, -29.583451433951936 -5.008847000842055, -29.516605281178226 -5.263760352674091 M-29.817416375363738 -4.116637278191813 C-29.736953781491216 -4.42347602133652, -29.656491187618695 -4.730314764481228, -29.516605281178226 -5.263760352674091 M-29.516605281178226 -5.263760352674091 C-29.418675084353374 -5.558710502452621, -29.32074488752852 -5.853660652231151, -29.142915807920573 -6.389253506794178 M-29.516605281178226 -5.263760352674091 C-29.392438329742912 -5.637731427080166, -29.268271378307603 -6.011702501486242, -29.142915807920573 -6.389253506794178 M-29.142915807920573 -6.389253506794178 C-29.011419075913604 -6.714052977167754, -28.87992234390663 -7.0388524475413305, -28.69788352579253 -7.488491847764283 M-29.142915807920573 -6.389253506794178 C-28.976724034625065 -6.799750399933433, -28.810532261329556 -7.210247293072689, -28.69788352579253 -7.488491847764283 M-28.69788352579253 -7.488491847764283 C-28.542806213501848 -7.810513204858813, -28.38772890121117 -8.132534561953344, -28.183337167900504 -8.556958369455446 M-28.69788352579253 -7.488491847764283 C-28.577690463419653 -7.738075313501114, -28.457497401046776 -7.987658779237946, -28.183337167900504 -8.556958369455446 M-28.183337167900504 -8.556958369455446 C-28.02751284535583 -8.83364023305718, -27.871688522811155 -9.110322096658912, -27.6013911155989 -9.590262513744717 M-28.183337167900504 -8.556958369455446 C-28.042510115666275 -8.807011060982688, -27.90168306343205 -9.057063752509931, -27.6013911155989 -9.590262513744717 M-27.6013911155989 -9.590262513744717 C-27.386446473319477 -9.920475205004024, -27.171501831040057 -10.250687896263333, -26.954436710043684 -10.584158212260139 M-27.6013911155989 -9.590262513744717 C-27.432829505680917 -9.849218411708717, -27.264267895762938 -10.108174309672716, -26.954436710043684 -10.584158212260139 M-26.954436710043684 -10.584158212260139 C-26.759041501627316 -10.845969990668387, -26.563646293210947 -11.107781769076635, -26.245132425658554 -11.534561334386567 M-26.954436710043684 -10.584158212260139 C-26.678213396020414 -10.95427228858973, -26.401990081997145 -11.32438636491932, -26.245132425658554 -11.534561334386567 M-26.245132425658554 -11.534561334386567 C-25.990035106310433 -11.834213161141546, -25.73493778696231 -12.133864987896526, -25.476392945893345 -12.437566469834355 M-26.245132425658554 -11.534561334386567 C-26.06625321996632 -11.744683027907813, -25.887374014274087 -11.95480472142906, -25.476392945893345 -12.437566469834355 M-25.476392945893345 -12.437566469834355 C-25.28087725633856 -12.63945247143631, -25.085361566783774 -12.841338473038268, -24.65137718616451 -13.28946297680795 M-25.476392945893345 -12.437566469834355 C-25.218599778025762 -12.703759080870336, -24.96080661015818 -12.969951691906317, -24.65137718616451 -13.28946297680795 M-24.65137718616451 -13.28946297680795 C-24.43020932258166 -13.490321778732891, -24.20904145899881 -13.691180580657832, -23.773475313194098 -14.086750229828974 M-24.65137718616451 -13.28946297680795 C-24.463230957050772 -13.460332404012613, -24.275084727937035 -13.631201831217277, -23.773475313194098 -14.086750229828974 M-23.773475313194098 -14.086750229828974 C-23.560746163651157 -14.256396065629056, -23.348017014108216 -14.426041901429137, -22.8462948140875 -14.826152004557194 M-23.773475313194098 -14.086750229828974 C-23.4893022196866 -14.313370709737596, -23.205129126179102 -14.539991189646216, -22.8462948140875 -14.826152004557194 M-22.8462948140875 -14.826152004557194 C-22.48484504209961 -15.0782837185875, -22.123395270111725 -15.330415432617807, -21.873645672395163 -15.504629940499045 M-22.8462948140875 -14.826152004557194 C-22.62784766905927 -14.97853127650439, -22.409400524031042 -15.130910548451585, -21.873645672395163 -15.504629940499045 M-21.873645672395163 -15.504629940499045 C-21.648872830378483 -15.640888558241395, -21.424099988361803 -15.777147175983744, -20.85952471207285 -16.1193960262827 M-21.873645672395163 -15.504629940499045 C-21.589476228078656 -15.67689512760873, -21.305306783762145 -15.849160314718414, -20.85952471207285 -16.1193960262827 M-20.85952471207285 -16.1193960262827 C-20.511893806163645 -16.300754847227314, -20.164262900254435 -16.482113668171927, -19.80809917367483 -16.667924056194753 M-20.85952471207285 -16.1193960262827 C-20.565856928646408 -16.272602320793084, -20.272189145219965 -16.425808615303467, -19.80809917367483 -16.667924056194753 M-19.80809917367483 -16.667924056194753 C-19.571993941150975 -16.772440838820184, -19.335888708627124 -16.87695762144562, -18.72368959026843 -17.147960010901397 M-19.80809917367483 -16.667924056194753 C-19.408945299523808 -16.844617635802425, -19.009791425372782 -17.0213112154101, -18.72368959026843 -17.147960010901397 M-18.72368959026843 -17.147960010901397 C-18.445671202555125 -17.250273347553698, -18.167652814841816 -17.352586684206, -17.610752033436995 -17.557531319697365 M-18.72368959026843 -17.147960010901397 C-18.344192702549385 -17.28761837361278, -17.964695814830343 -17.427276736324163, -17.610752033436995 -17.557531319697365 M-17.610752033436995 -17.557531319697365 C-17.213343896899563 -17.675479968583797, -16.815935760362134 -17.79342861747023, -16.473859802325904 -17.894954966222038 M-17.610752033436995 -17.557531319697365 C-17.22752777891039 -17.6712702668557, -16.844303524383783 -17.785009214014035, -16.473859802325904 -17.894954966222038 M-16.473859802325904 -17.894954966222038 C-16.115603168637875 -17.976724705018313, -15.757346534949848 -18.05849444381459, -15.317684630975394 -18.158844404334708 M-16.473859802325904 -17.894954966222038 C-16.12699039790819 -17.97412564424598, -15.780120993490476 -18.053296322269922, -15.317684630975394 -18.158844404334708 M-15.317684630975394 -18.158844404334708 C-14.906843245363326 -18.225266053437938, -14.496001859751257 -18.291687702541164, -14.146977491163373 -18.34811525573005 M-15.317684630975394 -18.158844404334708 C-14.925883647211485 -18.22218774892765, -14.534082663447577 -18.285531093520586, -14.146977491163373 -18.34811525573005 M-14.146977491163373 -18.34811525573005 C-13.880357464761115 -18.373835769019582, -13.613737438358859 -18.39955628230911, -12.96654906964319 -18.46198976588122 M-14.146977491163373 -18.34811525573005 C-13.784723481921114 -18.383061464327465, -13.422469472678856 -18.418007672924876, -12.96654906964319 -18.46198976588122 M-12.96654906964319 -18.46198976588122 C-12.493684133913506 -18.47715362399431, -12.020819198183824 -18.4923174821074, -11.781250000000005 -18.5 M-12.96654906964319 -18.46198976588122 C-12.591315992589692 -18.47402276031545, -12.216082915536195 -18.486055754749678, -11.781250000000005 -18.5 M-11.781250000000005 -18.5 C-11.781250000000004 -18.5, -11.781250000000004 -18.5, -11.78125 -18.5 M-11.781250000000005 -18.5 C-11.781250000000004 -18.5, -11.781250000000004 -18.5, -11.78125 -18.5\" stroke=\"#4948b8\" stroke-width=\"1.3\" fill=\"none\" stroke-dasharray=\"0 0\" style=\"\"\u002F>\u003C\u002Fg>\u003Cg class=\"label\" style=\"\" transform=\"translate(-17.65625, -10.5)\">\u003Crect\u002F>\u003CforeignObject width=\"35.3125\" height=\"21\">\u003Cdiv xmlns=\"http:\u002F\u002Fwww.w3.org\u002F1999\u002Fxhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\">\u003Cspan class=\"nodeLabel\">\u003Cp>sortir\u003C\u002Fp>\u003C\u002Fspan>\u003C\u002Fdiv>\u003C\u002FforeignObject>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003C\u002Fg>\u003Cdefs>\u003Cfilter id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles-drop-shadow\" height=\"130%\" width=\"130%\">\u003CfeDropShadow dx=\"4\" dy=\"4\" stdDeviation=\"0\" flood-opacity=\"0.06\" flood-color=\"#000000\"\u002F>\u003C\u002Ffilter>\u003C\u002Fdefs>\u003Cdefs>\u003Cfilter id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles-drop-shadow-small\" height=\"150%\" width=\"150%\">\u003CfeDropShadow dx=\"2\" dy=\"2\" stdDeviation=\"0\" flood-opacity=\"0.06\" flood-color=\"#000000\"\u002F>\u003C\u002Ffilter>\u003C\u002Fdefs>\u003ClinearGradient id=\"ill-0-snt-2nde-sh-prog-notions-conditionnelles-gradient\" gradientUnits=\"objectBoundingBox\" x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"0%\">\u003Cstop offset=\"0%\" stop-color=\"#4948b8\" stop-opacity=\"1\"\u002F>\u003Cstop offset=\"100%\" stop-color=\"#c4c8cd\" stop-opacity=\"1\"\u002F>\u003C\u002FlinearGradient>\u003C\u002Fsvg>",[595,2197,2199],{"id":2198},"exemple-complet-avec-snippet","Exemple complet avec snippet",[600,2201,2202],{},"Un mini-programme de catégorisation de température :",[960,2204,2205],{},[636,2206,2208],{"className":638,"code":2207,"language":640,"meta":641,"style":641},"temperature = 22\n\nif temperature \u003C 0:\n    print(\"Il gèle !\")\nelif temperature \u003C 15:\n    print(\"Il fait frais\")\nelif temperature \u003C 25:\n    print(\"Il fait bon\")\nelse:\n    print(\"Il fait chaud\")\n",[643,2209,2210,2220,2224,2238,2249,2262,2273,2286,2297,2303],{"__ignoreMap":641},[646,2211,2212,2215,2217],{"class":648,"line":649},[646,2213,2214],{"class":656},"temperature ",[646,2216,780],{"class":794},[646,2218,2219],{"class":652}," 22\n",[646,2221,2222],{"class":648,"line":667},[646,2223,994],{"emptyLinePlaceholder":993},[646,2225,2226,2228,2231,2233,2236],{"class":648,"line":679},[646,2227,1523],{"class":794},[646,2229,2230],{"class":656}," temperature ",[646,2232,1623],{"class":794},[646,2234,2235],{"class":652}," 0",[646,2237,1757],{"class":656},[646,2239,2240,2242,2244,2247],{"class":648,"line":919},[646,2241,1762],{"class":652},[646,2243,657],{"class":656},[646,2245,2246],{"class":660},"\"Il gèle !\"",[646,2248,664],{"class":656},[646,2250,2251,2253,2255,2257,2260],{"class":648,"line":1006},[646,2252,1526],{"class":794},[646,2254,2230],{"class":656},[646,2256,1623],{"class":794},[646,2258,2259],{"class":652}," 15",[646,2261,1757],{"class":656},[646,2263,2264,2266,2268,2271],{"class":648,"line":1018},[646,2265,1762],{"class":652},[646,2267,657],{"class":656},[646,2269,2270],{"class":660},"\"Il fait frais\"",[646,2272,664],{"class":656},[646,2274,2275,2277,2279,2281,2284],{"class":648,"line":1023},[646,2276,1526],{"class":794},[646,2278,2230],{"class":656},[646,2280,1623],{"class":794},[646,2282,2283],{"class":652}," 25",[646,2285,1757],{"class":656},[646,2287,2288,2290,2292,2295],{"class":648,"line":1039},[646,2289,1762],{"class":652},[646,2291,657],{"class":656},[646,2293,2294],{"class":660},"\"Il fait bon\"",[646,2296,664],{"class":656},[646,2298,2299,2301],{"class":648,"line":2067},[646,2300,1530],{"class":794},[646,2302,1757],{"class":656},[646,2304,2305,2307,2309,2312],{"class":648,"line":2074},[646,2306,1762],{"class":652},[646,2308,657],{"class":656},[646,2310,2311],{"class":660},"\"Il fait chaud\"",[646,2313,664],{"class":656},[600,2315,2316,2317,2320,2321,1286,2324,1286,2327,1286,2330,833],{},"Modifiez la valeur de ",[643,2318,2319],{},"temperature"," pour observer quelle branche se déclenche.\nEssayez ",[643,2322,2323],{},"-5",[643,2325,2326],{},"10",[643,2328,2329],{},"22",[643,2331,2332],{},"30",[595,2334,1378],{"id":1377},[1080,2336,2337],{},[748,2338,2339,2349,2364,2374],{},[751,2340,2341,2348],{},[604,2342,2343,2345,2346],{},[643,2344,780],{}," au lieu de ",[643,2347,1392],{}," dans la condition → erreur de syntaxe. La machine\nvous le dira tout de suite ; chez l'humain, c'est une habitude à prendre.",[751,2350,2351,2357,2358,2360,2361,2363],{},[604,2352,2353,2354],{},"Oublier les ",[643,2355,2356],{},":"," à la fin de la ligne ",[643,2359,1523],{}," ou ",[643,2362,1530],{}," → erreur de syntaxe.",[751,2365,2366,2369,2370,2373],{},[604,2367,2368],{},"Pas d'indentation"," ou indentation incohérente du bloc → erreur ou\ncomportement inattendu. ",[604,2371,2372],{},"Toujours 4 espaces",", jamais des tabulations\nmélangées.",[751,2375,2376,1426,2383,2385,2386,2388],{},[604,2377,2378,2379,2119,2381],{},"Confondre ",[643,2380,1526],{},[643,2382,1530],{},[643,2384,1526],{}," teste une nouvelle condition ; ",[643,2387,1530],{},"\nattrape « tout le reste » sans condition.",[595,2390,2392],{"id":2391},"pour-aller-plus-loin","Pour aller plus loin",[600,2394,2395,2396,2399,2400,2403,2404,2407],{},"On peut ",[604,2397,2398],{},"combiner"," plusieurs conditions avec ",[643,2401,2402],{},"and"," (et) et ",[643,2405,2406],{},"or"," (ou) :",[636,2409,2411],{"className":638,"code":2410,"language":640,"meta":641,"style":641},"age = 17\npermis = False\n\nif age >= 18 and permis:\n    print(\"Peut conduire seul\")\nelse:\n    print(\"Pas encore !\")\n",[643,2412,2413,2422,2432,2436,2452,2463,2469],{"__ignoreMap":641},[646,2414,2415,2417,2419],{"class":648,"line":649},[646,2416,802],{"class":656},[646,2418,780],{"class":794},[646,2420,2421],{"class":652}," 17\n",[646,2423,2424,2427,2429],{"class":648,"line":667},[646,2425,2426],{"class":656},"permis ",[646,2428,780],{"class":794},[646,2430,2431],{"class":652}," False\n",[646,2433,2434],{"class":648,"line":679},[646,2435,994],{"emptyLinePlaceholder":993},[646,2437,2438,2440,2442,2444,2446,2449],{"class":648,"line":919},[646,2439,1523],{"class":794},[646,2441,1749],{"class":656},[646,2443,1680],{"class":794},[646,2445,1754],{"class":652},[646,2447,2448],{"class":794}," and",[646,2450,2451],{"class":656}," permis:\n",[646,2453,2454,2456,2458,2461],{"class":648,"line":1006},[646,2455,1762],{"class":652},[646,2457,657],{"class":656},[646,2459,2460],{"class":660},"\"Peut conduire seul\"",[646,2462,664],{"class":656},[646,2464,2465,2467],{"class":648,"line":1018},[646,2466,1530],{"class":794},[646,2468,1757],{"class":656},[646,2470,2471,2473,2475,2478],{"class":648,"line":1023},[646,2472,1762],{"class":652},[646,2474,657],{"class":656},[646,2476,2477],{"class":660},"\"Pas encore !\"",[646,2479,664],{"class":656},[600,2481,2482,2484,2485,2488,2489,2491,2492,2495],{},[643,2483,2402],{}," exige que ",[604,2486,2487],{},"les deux"," conditions soient vraies. ",[643,2490,2406],{}," se contente\nqu'",[604,2493,2494],{},"au moins une"," soit vraie. Ce sera approfondi en NSI.",[1467,2497,2498],{},"html pre.shiki code .sxrX7, html code.shiki .sxrX7{--shiki-light:#24292E;--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s8jYJ, html code.shiki .s8jYJ{--shiki-light:#D73A49;--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sBjJW, html code.shiki .sBjJW{--shiki-light:#005CC5;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sIIMD, html code.shiki .sIIMD{--shiki-light:#032F62;--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":641,"searchDepth":667,"depth":667,"links":2500},[2501,2502,2503,2505,2507,2509,2511,2512,2513],{"id":597,"depth":667,"text":598},{"id":1540,"depth":667,"text":1541},{"id":1717,"depth":667,"text":2504},"L'instruction if — une seule branche",{"id":1858,"depth":667,"text":2506},"if … else … — deux chemins",{"id":1958,"depth":667,"text":2508},"if … elif … else … — plusieurs chemins",{"id":2178,"depth":667,"text":2510},"Visualiser un if complet",{"id":2198,"depth":667,"text":2199},{"id":1377,"depth":667,"text":1378},{"id":2391,"depth":667,"text":2392},"Faire choisir un programme entre plusieurs chemins selon qu'une condition est vraie ou fausse.",{},[2517,2519],{"slug":1835,"kind":1487,"question":1840,"choices":2518,"correct":736,"multi":1489,"explanation":1834},[1847,1850,1554,1855],{"slug":2154,"kind":1487,"question":2159,"choices":2520,"correct":2152,"multi":1489,"explanation":2153},[2166,2169,2172,2175],{"title":195,"description":2514},"LDwgZ2BYHL7XGpGnulp3iDESpzkZiLvwgMz4HAWjTeU",{"id":2524,"title":199,"bo":2525,"body":2527,"description":3707,"eval":1482,"extension":1483,"labo":1482,"meta":3708,"navigation":993,"path":200,"quizzes":3709,"readingTime":649,"seo":3714,"stem":201,"tp":1482,"__hash__":3715},"cours\u002F0.snt-2nde\u002Fsh-prog-notions\u002F3.boucles.md",[2526],"SH02",{"type":592,"value":2528,"toc":3691},[2529,2531,2541,2567,2569,2576,2593,2628,2635,2641,2659,2677,2681,2691,2726,2729,2735,2738,2744,2749,2813,2830,2851,2857,2869,2928,2941,3078,3088,3104,3108,3111,3178,3181,3211,3369,3393,3415,3419,3433,3474,3483,3489,3492,3560,3587,3589,3645,3647,3650,3682,3688],[595,2530,598],{"id":597},[600,2532,2533,2534,2536,2537,2540],{},"Imaginez devoir afficher « Bonjour » dix fois. Avec ce que vous savez, il\nfaudrait écrire dix lignes de ",[643,2535,653],{},". Pour cent fois, ce serait absurde. Les\nordinateurs sont conçus pour ",[604,2538,2539],{},"répéter"," rapidement et sans erreur — c'est même\nl'une des choses qu'ils font le mieux.",[600,2542,2543,2544,2547,2548,2551,2552,2555,2556,2559,2560,2563,2564,833],{},"L'instruction qui dit ",[872,2545,2546],{},"« recommence ce bloc plusieurs fois »"," s'appelle une\n",[604,2549,2550],{},"boucle",". Python en propose deux : ",[643,2553,2554],{},"for",", quand on ",[604,2557,2558],{},"sait à l'avance"," combien\nde répétitions on veut, et ",[643,2561,2562],{},"while",", quand on veut continuer ",[604,2565,2566],{},"tant qu'une\ncondition reste vraie",[624,2568],{"code":2526},[595,2570,2572,2573,2575],{"id":2571},"la-boucle-for-bornée","La boucle ",[643,2574,2554],{}," — bornée",[600,2577,2578,2579,2582,2583,2586,2587,2589,2590,781],{},"Une boucle est dite ",[604,2580,2581],{},"bornée"," quand le nombre de tours est ",[604,2584,2585],{},"fixé d'avance",".\nEn Python, on l'écrit avec ",[643,2588,2554],{}," et la fonction ",[643,2591,2592],{},"range",[636,2594,2596],{"className":638,"code":2595,"language":640,"meta":641,"style":641},"for i in range(5):\n    print(\"Bonjour\")\n",[643,2597,2598,2618],{"__ignoreMap":641},[646,2599,2600,2602,2605,2608,2611,2613,2615],{"class":648,"line":649},[646,2601,2554],{"class":794},[646,2603,2604],{"class":656}," i ",[646,2606,2607],{"class":794},"in",[646,2609,2610],{"class":652}," range",[646,2612,657],{"class":656},[646,2614,1171],{"class":652},[646,2616,2617],{"class":656},"):\n",[646,2619,2620,2622,2624,2626],{"class":648,"line":667},[646,2621,1762],{"class":652},[646,2623,657],{"class":656},[646,2625,661],{"class":660},[646,2627,664],{"class":656},[600,2629,2630,2631,2634],{},"Ce programme affiche ",[604,2632,2633],{},"cinq fois"," la même chose :",[636,2636,2639],{"className":2637,"code":2638,"language":713,"meta":641},[711],"Bonjour\nBonjour\nBonjour\nBonjour\nBonjour\n",[643,2640,2638],{"__ignoreMap":641},[600,2642,2643,2644,2655,2656,2658],{},"Lecture : ",[872,2645,2646,2647,2650,2651,2654],{},"« pour chaque valeur ",[643,2648,2649],{},"i"," prise dans ",[643,2652,2653],{},"range(5)",", exécuter le bloc »",".\nÀ chaque tour, la variable ",[643,2657,2649],{}," prend la valeur suivante : 0, 1, 2, 3, 4.",[1080,2660,2661],{},[600,2662,2663,2668,2669,2672,2673,2676],{},[604,2664,2665,2667],{},[643,2666,2653],{}," produit 0, 1, 2, 3, 4"," — c'est-à-dire ",[604,2670,2671],{},"cinq valeurs",", mais\nqui s'arrêtent ",[604,2674,2675],{},"avant 5",". La borne supérieure n'est jamais atteinte. C'est\nun piège classique à mémoriser une bonne fois pour toutes.",[595,2678,2680],{"id":2679},"utiliser-la-variable-de-boucle","Utiliser la variable de boucle",[600,2682,2683,2684,2686,2687,2690],{},"La variable ",[643,2685,2649],{}," (ou tout autre nom que vous choisissez) ",[604,2688,2689],{},"peut être utilisée","\nà l'intérieur de la boucle :",[960,2692,2693],{},[636,2694,2696],{"className":638,"code":2695,"language":640,"meta":641,"style":641},"for i in range(5):\n    print(\"Tour numéro\", i)\n",[643,2697,2698,2714],{"__ignoreMap":641},[646,2699,2700,2702,2704,2706,2708,2710,2712],{"class":648,"line":649},[646,2701,2554],{"class":794},[646,2703,2604],{"class":656},[646,2705,2607],{"class":794},[646,2707,2610],{"class":652},[646,2709,657],{"class":656},[646,2711,1171],{"class":652},[646,2713,2617],{"class":656},[646,2715,2716,2718,2720,2723],{"class":648,"line":667},[646,2717,1762],{"class":652},[646,2719,657],{"class":656},[646,2721,2722],{"class":660},"\"Tour numéro\"",[646,2724,2725],{"class":656},", i)\n",[600,2727,2728],{},"Affichage :",[636,2730,2733],{"className":2731,"code":2732,"language":713,"meta":641},[711],"Tour numéro 0\nTour numéro 1\nTour numéro 2\nTour numéro 3\nTour numéro 4\n",[643,2734,2732],{"__ignoreMap":641},[600,2736,2737],{},"Cela rend les boucles bien plus puissantes que de simples répétitions\nidentiques.",[595,2739,2741,2742],{"id":2740},"varier-range","Varier ",[643,2743,2592],{},[600,2745,2746,2748],{},[643,2747,2592],{}," accepte plusieurs formes :",[1140,2750,2751,2764],{},[1143,2752,2753],{},[1146,2754,2755,2758,2761],{},[1149,2756,2757],{},"Écriture",[1149,2759,2760],{},"Valeurs produites",[1149,2762,2763],{},"Combien de tours",[1159,2765,2766,2777,2789,2801],{},[1146,2767,2768,2772,2775],{},[1164,2769,2770],{},[643,2771,2653],{},[1164,2773,2774],{},"0, 1, 2, 3, 4",[1164,2776,1171],{},[1146,2778,2779,2784,2787],{},[1164,2780,2781],{},[643,2782,2783],{},"range(1, 6)",[1164,2785,2786],{},"1, 2, 3, 4, 5",[1164,2788,1171],{},[1146,2790,2791,2796,2799],{},[1164,2792,2793],{},[643,2794,2795],{},"range(2, 10, 2)",[1164,2797,2798],{},"2, 4, 6, 8",[1164,2800,1116],{},[1146,2802,2803,2808,2811],{},[1164,2804,2805],{},[643,2806,2807],{},"range(10, 0, -1)",[1164,2809,2810],{},"10, 9, 8, …, 1",[1164,2812,2326],{},[600,2814,2815,2816,2819,2820,2823,2824,2827,2828,833],{},"Avec deux arguments, c'est ",[643,2817,2818],{},"range(début, fin)"," — toujours, la borne ",[643,2821,2822],{},"fin"," est\n",[604,2825,2826],{},"exclue",". Avec trois arguments, le dernier est le ",[604,2829,842],{},[734,2831,2834,2839],{"correct":2152,"explanation":2832,"slug":2833},"range(3,8) produit 3,4,5,6,7 — soit 5 valeurs.","boucles-c1",[740,2835,2836],{"v-slot:question":641},[600,2837,2838],{},"Combien de tours dans for i in range(3, 8): ?",[740,2840,2841],{"v-slot:choices":641},[748,2842,2843,2845,2847,2849],{},[751,2844,1100],{},[751,2846,1116],{},[751,2848,1171],{},[751,2850,1122],{},[595,2852,2572,2854,2856],{"id":2853},"la-boucle-while-non-bornée",[643,2855,2562],{}," — non bornée",[600,2858,2859,2860,2863,2864,2866,2867,781],{},"Parfois, on ",[604,2861,2862],{},"ne sait pas à l'avance"," combien de tours seront nécessaires —\nseulement la ",[604,2865,1546],{}," qui doit rester vraie pour continuer. C'est le rôle\nde ",[643,2868,2562],{},[636,2870,2872],{"className":638,"code":2871,"language":640,"meta":641,"style":641},"n = 1\n\nwhile n \u003C 100:\n    n = n * 2\n\nprint(n)\n",[643,2873,2874,2884,2888,2902,2917,2921],{"__ignoreMap":641},[646,2875,2876,2879,2881],{"class":648,"line":649},[646,2877,2878],{"class":656},"n ",[646,2880,780],{"class":794},[646,2882,2883],{"class":652}," 1\n",[646,2885,2886],{"class":648,"line":667},[646,2887,994],{"emptyLinePlaceholder":993},[646,2889,2890,2892,2895,2897,2900],{"class":648,"line":679},[646,2891,2562],{"class":794},[646,2893,2894],{"class":656}," n ",[646,2896,1623],{"class":794},[646,2898,2899],{"class":652}," 100",[646,2901,1757],{"class":656},[646,2903,2904,2907,2909,2911,2914],{"class":648,"line":919},[646,2905,2906],{"class":656},"    n ",[646,2908,780],{"class":794},[646,2910,2894],{"class":656},[646,2912,2913],{"class":794},"*",[646,2915,2916],{"class":652}," 2\n",[646,2918,2919],{"class":648,"line":1006},[646,2920,994],{"emptyLinePlaceholder":993},[646,2922,2923,2925],{"class":648,"line":1018},[646,2924,653],{"class":652},[646,2926,2927],{"class":656},"(n)\n",[600,2929,2643,2930,2940],{},[872,2931,2932,2933,2936,2937,880],{},"« tant que ",[643,2934,2935],{},"n \u003C 100",", faire ",[643,2938,2939],{},"n = n * 2",". Python recommence le\nbloc tant que la condition est vraie. Déroulons :",[1140,2942,2943,2965],{},[1143,2944,2945],{},[1146,2946,2947,2950,2956,2962],{},[1149,2948,2949],{},"Tour",[1149,2951,2952,2953,2955],{},"Valeur de ",[643,2954,1293],{}," avant",[1149,2957,2958,2959,2961],{},"Condition ",[643,2960,2935],{}," ?",[1149,2963,2964],{},"Action",[1159,2966,2967,2981,2994,3007,3020,3034,3049,3063],{},[1146,2968,2969,2971,2973,2976],{},[1164,2970,736],{},[1164,2972,736],{},[1164,2974,2975],{},"vraie",[1164,2977,2978,2980],{},[643,2979,1293],{}," devient 2",[1146,2982,2983,2985,2987,2989],{},[1164,2984,2152],{},[1164,2986,2152],{},[1164,2988,2975],{},[1164,2990,2991,2993],{},[643,2992,1293],{}," devient 4",[1146,2995,2996,2998,3000,3002],{},[1164,2997,1100],{},[1164,2999,1116],{},[1164,3001,2975],{},[1164,3003,3004,3006],{},[643,3005,1293],{}," devient 8",[1146,3008,3009,3011,3013,3015],{},[1164,3010,1116],{},[1164,3012,1122],{},[1164,3014,2975],{},[1164,3016,3017,3019],{},[643,3018,1293],{}," devient 16",[1146,3021,3022,3024,3027,3029],{},[1164,3023,1171],{},[1164,3025,3026],{},"16",[1164,3028,2975],{},[1164,3030,3031,3033],{},[643,3032,1293],{}," devient 32",[1146,3035,3036,3039,3042,3044],{},[1164,3037,3038],{},"6",[1164,3040,3041],{},"32",[1164,3043,2975],{},[1164,3045,3046,3048],{},[643,3047,1293],{}," devient 64",[1146,3050,3051,3053,3056,3058],{},[1164,3052,1119],{},[1164,3054,3055],{},"64",[1164,3057,2975],{},[1164,3059,3060,3062],{},[643,3061,1293],{}," devient 128",[1146,3064,3065,3067,3070,3075],{},[1164,3066,1122],{},[1164,3068,3069],{},"128",[1164,3071,3072],{},[604,3073,3074],{},"fausse",[1164,3076,3077],{},"sortir de la boucle",[600,3079,3080,3081,3084,3085,3087],{},"Le ",[643,3082,3083],{},"print(n)"," final affiche ",[604,3086,3069],{},". Avant d'écrire cette boucle, on aurait été\nincapable de prédire qu'il y aurait exactement 7 tours.",[858,3089,3090],{"type":860},[600,3091,3092,3095,3096,3099,3100,3103],{},[604,3093,3094],{},"Bornée vs non bornée"," : la différence ne porte pas sur le nombre de tours\nen lui-même, mais sur le fait qu'on le ",[604,3097,3098],{},"connaît à l'écriture"," (bornée) ou\nqu'il dépend du ",[604,3101,3102],{},"déroulement"," (non bornée).",[595,3105,3107],{"id":3106},"bornée-ou-non-bornée-tableau-de-décision","Bornée ou non bornée ? Tableau de décision",[600,3109,3110],{},"Pour chaque situation, on indique le type de boucle approprié, puis on\nmatérialise l'idée par un mini-snippet Python juste après le tableau :",[1140,3112,3113,3126],{},[1143,3114,3115],{},[1146,3116,3117,3120,3123],{},[1149,3118,3119],{},"Situation",[1149,3121,3122],{},"Type",[1149,3124,3125],{},"Pourquoi",[1159,3127,3128,3141,3154,3166],{},[1146,3129,3130,3133,3138],{},[1164,3131,3132],{},"Afficher les nombres de 1 à 100",[1164,3134,3135,3137],{},[643,3136,2554],{}," (bornée)",[1164,3139,3140],{},"on sait : 100 tours",[1146,3142,3143,3146,3151],{},[1164,3144,3145],{},"Répéter une question jusqu'à obtenir une bonne réponse",[1164,3147,3148,3150],{},[643,3149,2562],{}," (non bornée)",[1164,3152,3153],{},"on ne sait pas combien d'essais",[1146,3155,3156,3159,3163],{},[1164,3157,3158],{},"Parcourir chaque caractère d'un mot",[1164,3160,3161,3137],{},[643,3162,2554],{},[1164,3164,3165],{},"autant de tours que de lettres",[1146,3167,3168,3171,3175],{},[1164,3169,3170],{},"Continuer un jeu tant que le joueur a des points",[1164,3172,3173,3150],{},[643,3174,2562],{},[1164,3176,3177],{},"dépend des coups joués",[600,3179,3180],{},"Les snippets correspondants, ligne par ligne :",[724,3182,3183],{},[600,3184,3185,3192,3193,3196,3197,3200,3201,3203,3204,3207,3208,3210],{},[604,3186,3187,3189,3190,833],{},[643,3188,2554],{}," ne sert pas qu'avec ",[643,3191,2592],{}," Une ",[604,3194,3195],{},"chaîne de caractères"," (comme\n",[643,3198,3199],{},"\"Python\"",") peut elle aussi être parcourue caractère par caractère par un\n",[643,3202,2554],{}," : à chaque tour, la variable prend la valeur d'une lettre, dans l'ordre.\nOn dit qu'une chaîne est ",[604,3205,3206],{},"parcourable"," au même titre qu'un ",[643,3209,2592],{},". C'est\nce qu'illustre le 3ᵉ onglet ci-dessous.",[3212,3213,3214,3248,3293,3320],"code-group",{},[636,3215,3218],{"className":638,"code":3216,"filename":3217,"language":640,"meta":641,"style":641},"for i in range(1, 101):\n    print(i)\n","1 à 100",[643,3219,3220,3241],{"__ignoreMap":641},[646,3221,3222,3224,3226,3228,3230,3232,3234,3236,3239],{"class":648,"line":649},[646,3223,2554],{"class":794},[646,3225,2604],{"class":656},[646,3227,2607],{"class":794},[646,3229,2610],{"class":652},[646,3231,657],{"class":656},[646,3233,736],{"class":652},[646,3235,1286],{"class":656},[646,3237,3238],{"class":652},"101",[646,3240,2617],{"class":656},[646,3242,3243,3245],{"class":648,"line":667},[646,3244,1762],{"class":652},[646,3246,3247],{"class":656},"(i)\n",[636,3249,3252],{"className":638,"code":3250,"filename":3251,"language":640,"meta":641,"style":641},"# demander() est ici une fonction imaginaire (saisie utilisateur).\nreponse = \"\"\nwhile reponse != \"Paris\":\n    reponse = demander()\n","Question jusqu'à bonne réponse",[643,3253,3254,3259,3269,3283],{"__ignoreMap":641},[646,3255,3256],{"class":648,"line":649},[646,3257,3258],{"class":1304},"# demander() est ici une fonction imaginaire (saisie utilisateur).\n",[646,3260,3261,3264,3266],{"class":648,"line":667},[646,3262,3263],{"class":656},"reponse ",[646,3265,780],{"class":794},[646,3267,3268],{"class":660}," \"\"\n",[646,3270,3271,3273,3276,3278,3281],{"class":648,"line":679},[646,3272,2562],{"class":794},[646,3274,3275],{"class":656}," reponse ",[646,3277,1604],{"class":794},[646,3279,3280],{"class":660}," \"Paris\"",[646,3282,1757],{"class":656},[646,3284,3285,3288,3290],{"class":648,"line":919},[646,3286,3287],{"class":656},"    reponse ",[646,3289,780],{"class":794},[646,3291,3292],{"class":656}," demander()\n",[636,3294,3297],{"className":638,"code":3295,"filename":3296,"language":640,"meta":641,"style":641},"for lettre in \"Python\":\n    print(lettre)\n","Lettres d'un mot",[643,3298,3299,3313],{"__ignoreMap":641},[646,3300,3301,3303,3306,3308,3311],{"class":648,"line":649},[646,3302,2554],{"class":794},[646,3304,3305],{"class":656}," lettre ",[646,3307,2607],{"class":794},[646,3309,3310],{"class":660}," \"Python\"",[646,3312,1757],{"class":656},[646,3314,3315,3317],{"class":648,"line":667},[646,3316,1762],{"class":652},[646,3318,3319],{"class":656},"(lettre)\n",[636,3321,3324],{"className":638,"code":3322,"filename":3323,"language":640,"meta":641,"style":641},"# perdre() est ici une fonction imaginaire (points perdus à ce tour).\npoints = 100\nwhile points > 0:\n    points = points - perdre()\n","Tant qu'il reste des points",[643,3325,3326,3331,3341,3354],{"__ignoreMap":641},[646,3327,3328],{"class":648,"line":649},[646,3329,3330],{"class":1304},"# perdre() est ici une fonction imaginaire (points perdus à ce tour).\n",[646,3332,3333,3336,3338],{"class":648,"line":667},[646,3334,3335],{"class":656},"points ",[646,3337,780],{"class":794},[646,3339,3340],{"class":652}," 100\n",[646,3342,3343,3345,3348,3350,3352],{"class":648,"line":679},[646,3344,2562],{"class":794},[646,3346,3347],{"class":656}," points ",[646,3349,1642],{"class":794},[646,3351,2235],{"class":652},[646,3353,1757],{"class":656},[646,3355,3356,3359,3361,3363,3366],{"class":648,"line":919},[646,3357,3358],{"class":656},"    points ",[646,3360,780],{"class":794},[646,3362,3347],{"class":656},[646,3364,3365],{"class":794},"-",[646,3367,3368],{"class":656}," perdre()\n",[600,3370,3371,3372,2119,3375,3378,3379,3382,3383,3386,3387,3389,3390,3392],{},"Les fonctions ",[643,3373,3374],{},"demander()",[643,3376,3377],{},"perdre()"," sont là ",[604,3380,3381],{},"à titre d'illustration"," —\nce sont des fonctions imaginaires qui représenteraient une saisie utilisateur\nou un coup perdu. Vous apprendrez à écrire vos propres fonctions au cours\nsuivant. Pour l'instant, ce qu'il faut voir, c'est la ",[604,3384,3385],{},"structure"," de la\nboucle : ",[643,3388,2554],{}," quand le nombre de tours est connu d'avance, ",[643,3391,2562],{}," quand il\ndépend de ce qui se passe pendant l'exécution.",[734,3394,3397,3402],{"correct":1459,"explanation":3395,"slug":3396},"On parcourt chaque lettre du mot — le nombre de tours est connu : c'est la longueur du mot.","boucles-c2",[740,3398,3399],{"v-slot:question":641},[600,3400,3401],{},"Pour compter les voyelles d'un mot donné, quel type de boucle est le plus naturel ?",[740,3403,3404],{"v-slot:choices":641},[748,3405,3406,3409,3412],{},[751,3407,3408],{},"for bornée",[751,3410,3411],{},"while non bornée",[751,3413,3414],{},"aucune des deux",[595,3416,3418],{"id":3417},"le-piège-mortel-la-boucle-infinie","Le piège mortel : la boucle infinie",[600,3420,3421,3422,3424,3425,3428,3429,3432],{},"Une boucle ",[643,3423,2562],{}," doit ",[604,3426,3427],{},"finir un jour",". Pour cela, la condition doit pouvoir\ndevenir fausse — et donc, quelque chose ",[604,3430,3431],{},"dans la boucle"," doit la faire\névoluer. Sinon, le programme tourne indéfiniment.",[636,3434,3436],{"className":638,"code":3435,"language":640,"meta":641,"style":641},"# DANGER : boucle infinie\nn = 1\nwhile n \u003C 100:\n    print(n)\n    # rien ne change n... la condition reste vraie pour toujours\n",[643,3437,3438,3443,3451,3463,3469],{"__ignoreMap":641},[646,3439,3440],{"class":648,"line":649},[646,3441,3442],{"class":1304},"# DANGER : boucle infinie\n",[646,3444,3445,3447,3449],{"class":648,"line":667},[646,3446,2878],{"class":656},[646,3448,780],{"class":794},[646,3450,2883],{"class":652},[646,3452,3453,3455,3457,3459,3461],{"class":648,"line":679},[646,3454,2562],{"class":794},[646,3456,2894],{"class":656},[646,3458,1623],{"class":794},[646,3460,2899],{"class":652},[646,3462,1757],{"class":656},[646,3464,3465,3467],{"class":648,"line":919},[646,3466,1762],{"class":652},[646,3468,2927],{"class":656},[646,3470,3471],{"class":648,"line":1006},[646,3472,3473],{"class":1304},"    # rien ne change n... la condition reste vraie pour toujours\n",[1080,3475,3476],{},[600,3477,3478,3479,3482],{},"Si vous lancez accidentellement une boucle infinie, le programme ne s'arrête\nplus tout seul. Sur un éditeur en ligne, fermez l'onglet ou cliquez sur\n« arrêter ». Vérifiez ",[604,3480,3481],{},"toujours"," qu'une variable de la condition change à\nl'intérieur du bloc.",[595,3484,3486,3487],{"id":3485},"exemple-complet-de-while","Exemple complet de ",[643,3488,2562],{},[600,3490,3491],{},"Un compte à rebours qui s'arrête quand on atteint zéro :",[960,3493,3494],{},[636,3495,3497],{"className":638,"code":3496,"language":640,"meta":641,"style":641},"nombre = 10\n\nwhile nombre > 0:\n    print(nombre)\n    nombre = nombre - 1\n\nprint(\"Décollage !\")\n",[643,3498,3499,3508,3512,3525,3532,3545,3549],{"__ignoreMap":641},[646,3500,3501,3504,3506],{"class":648,"line":649},[646,3502,3503],{"class":656},"nombre ",[646,3505,780],{"class":794},[646,3507,1003],{"class":652},[646,3509,3510],{"class":648,"line":667},[646,3511,994],{"emptyLinePlaceholder":993},[646,3513,3514,3516,3519,3521,3523],{"class":648,"line":679},[646,3515,2562],{"class":794},[646,3517,3518],{"class":656}," nombre ",[646,3520,1642],{"class":794},[646,3522,2235],{"class":652},[646,3524,1757],{"class":656},[646,3526,3527,3529],{"class":648,"line":919},[646,3528,1762],{"class":652},[646,3530,3531],{"class":656},"(nombre)\n",[646,3533,3534,3537,3539,3541,3543],{"class":648,"line":1006},[646,3535,3536],{"class":656},"    nombre ",[646,3538,780],{"class":794},[646,3540,3518],{"class":656},[646,3542,3365],{"class":794},[646,3544,2883],{"class":652},[646,3546,3547],{"class":648,"line":1018},[646,3548,994],{"emptyLinePlaceholder":993},[646,3550,3551,3553,3555,3558],{"class":648,"line":1023},[646,3552,653],{"class":652},[646,3554,657],{"class":656},[646,3556,3557],{"class":660},"\"Décollage !\"",[646,3559,664],{"class":656},[600,3561,3562,3563,3566,3567,3569,3570,3573,3574,3576,3577,3579,3580,3582,3583,3586],{},"À chaque tour, ",[643,3564,3565],{},"nombre"," diminue de 1. Au tour où ",[643,3568,3565],{}," vaut 1, la condition\n",[643,3571,3572],{},"nombre > 0"," est encore vraie : on affiche ",[643,3575,736],{},", puis ",[643,3578,3565],{}," devient ",[643,3581,1459],{},". Le\ntour suivant, la condition est fausse : on sort, et le ",[643,3584,3585],{},"print(\"Décollage !\")","\nfinal s'exécute.",[595,3588,1378],{"id":1377},[1080,3590,3591],{},[748,3592,3593,3616,3627,3636],{},[751,3594,3595,3610,3611,3606,3613,3615],{},[604,3596,3597,3600,3601,3603,3604,3606,3607],{},[643,3598,3599],{},"range(n)"," produit ",[643,3602,1293],{}," valeurs de ",[643,3605,1459],{}," à ",[643,3608,3609],{},"n-1",", pas de ",[643,3612,736],{},[643,3614,1293],{},". Ne\njamais l'oublier.",[751,3617,3618,3626],{},[604,3619,3620,3621,3623,3624],{},"Modifier ",[643,3622,2649],{}," dans une boucle ",[643,3625,2554],{}," est mal vu : Python le ré-assignera\nau tour suivant de toute façon. Inutile et trompeur.",[751,3628,3629,3632,3633,3635],{},[604,3630,3631],{},"Boucle infinie"," : toujours vérifier qu'une variable de la condition\n",[643,3634,2562],{}," change dans le bloc.",[751,3637,3638,3641,3642,3644],{},[604,3639,3640],{},"Indentation"," : comme pour les ",[643,3643,1523],{},", le bloc répété est décalé de 4\nespaces. Sans indentation, Python refuse de comprendre.",[595,3646,2392],{"id":2391},[600,3648,3649],{},"On peut aussi parcourir directement une chaîne ou une liste :",[636,3651,3653],{"className":638,"code":3652,"language":640,"meta":641,"style":641},"mot = \"Python\"\nfor lettre in mot:\n    print(lettre)\n",[643,3654,3655,3665,3676],{"__ignoreMap":641},[646,3656,3657,3660,3662],{"class":648,"line":649},[646,3658,3659],{"class":656},"mot ",[646,3661,780],{"class":794},[646,3663,3664],{"class":660}," \"Python\"\n",[646,3666,3667,3669,3671,3673],{"class":648,"line":667},[646,3668,2554],{"class":794},[646,3670,3305],{"class":656},[646,3672,2607],{"class":794},[646,3674,3675],{"class":656}," mot:\n",[646,3677,3678,3680],{"class":648,"line":679},[646,3679,1762],{"class":652},[646,3681,3319],{"class":656},[600,3683,3684,3685,3687],{},"Cela affiche chaque lettre du mot, une par ligne. C'est encore une boucle\n",[604,3686,2581],{}," (autant de tours que de lettres), juste écrite différemment.",[1467,3689,3690],{},"html pre.shiki code .s8jYJ, html code.shiki .s8jYJ{--shiki-light:#D73A49;--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sxrX7, html code.shiki .sxrX7{--shiki-light:#24292E;--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sBjJW, html code.shiki .sBjJW{--shiki-light:#005CC5;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sIIMD, html code.shiki .sIIMD{--shiki-light:#032F62;--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sCsY4, html code.shiki .sCsY4{--shiki-light:#6A737D;--shiki-default:#6A737D;--shiki-dark:#6A737D}",{"title":641,"searchDepth":667,"depth":667,"links":3692},[3693,3694,3696,3697,3699,3701,3702,3703,3705,3706],{"id":597,"depth":667,"text":598},{"id":2571,"depth":667,"text":3695},"La boucle for — bornée",{"id":2679,"depth":667,"text":2680},{"id":2740,"depth":667,"text":3698},"Varier range",{"id":2853,"depth":667,"text":3700},"La boucle while — non bornée",{"id":3106,"depth":667,"text":3107},{"id":3417,"depth":667,"text":3418},{"id":3485,"depth":667,"text":3704},"Exemple complet de while",{"id":1377,"depth":667,"text":1378},{"id":2391,"depth":667,"text":2392},"Répéter des instructions, soit un nombre de fois connu d'avance (for), soit jusqu'à ce qu'une condition cesse (while).",{},[3710,3712],{"slug":2833,"kind":1487,"question":2838,"choices":3711,"correct":2152,"multi":1489,"explanation":2832},[1100,1116,1171,1122],{"slug":3396,"kind":1487,"question":3401,"choices":3713,"correct":1459,"multi":1489,"explanation":3395},[3408,3411,3414],{"title":199,"description":3707},"DG14t_bR0ZkJsl100k60wzOiCccuwTgjF_f-kFWwTqg",{"id":3717,"title":203,"bo":3718,"body":3720,"description":4952,"eval":1482,"extension":1483,"labo":1482,"meta":4953,"navigation":993,"path":204,"quizzes":4954,"readingTime":649,"seo":4959,"stem":205,"tp":1482,"__hash__":4960},"cours\u002F0.snt-2nde\u002Fsh-prog-notions\u002F4.fonctions.md",[3719],"SH03",{"type":592,"value":3721,"toc":4940},[3722,3724,3742,3753,3767,3769,3773,3776,3801,3813,3826,3830,3841,3878,3881,3904,3920,3966,3968,3974,3997,4019,4023,4033,4088,4090,4096,4099,4129,4149,4156,4218,4225,4232,4251,4278,4288,4362,4380,4493,4524,4547,4551,4554,4609,4651,4655,4658,4673,4830,4833,4839,4866,4868,4920,4922,4937],[595,3723,598],{"id":597},[600,3725,769,3726,3729,3730,3733,3734,3737,3738,3741],{},[604,3727,3728],{},"fonction",", c'est un peu comme une ",[604,3731,3732],{},"recette de cuisine",". Vous lui\nfournissez des ",[604,3735,3736],{},"ingrédients"," (les paramètres), elle suit sa procédure, et\nelle vous ",[604,3739,3740],{},"rend un plat"," (la valeur de retour). Une fois la recette écrite,\nvous pouvez la réutiliser autant de fois que vous le souhaitez, avec des\ningrédients différents — sans avoir à réécrire les étapes à chaque fois.",[600,3743,3744,3745,3748,3749,3752],{},"Vous avez sans doute remarqué qu'en programmation, on répète vite les mêmes\nopérations : « calculer le carré d'un nombre », « afficher un menu »,\n« vérifier si une note est suffisante »… À chaque fois, on aimerait\n",[604,3746,3747],{},"emballer"," ce morceau de programme une fois pour toutes, et lui donner un\n",[604,3750,3751],{},"nom",", pour pouvoir l'utiliser ensuite sans tout réécrire.",[600,3754,3755,3756,3758,3759,3762,3763,3766],{},"C'est exactement ce que fait une ",[604,3757,3728],{}," : un ",[604,3760,3761],{},"bout de programme\nnommé",", qu'on peut ",[604,3764,3765],{},"appeler"," ailleurs aussi souvent qu'on veut.",[624,3768],{"code":3719},[595,3770,3772],{"id":3771},"vous-connaissez-déjà-des-fonctions","Vous connaissez déjà des fonctions",[600,3774,3775],{},"Depuis le début du chapitre, vous utilisez des fonctions sans le savoir :",[636,3777,3779],{"className":638,"code":3778,"language":640,"meta":641,"style":641},"print(\"Bonjour\")\nrange(10)\n",[643,3780,3781,3791],{"__ignoreMap":641},[646,3782,3783,3785,3787,3789],{"class":648,"line":649},[646,3784,653],{"class":652},[646,3786,657],{"class":656},[646,3788,661],{"class":660},[646,3790,664],{"class":656},[646,3792,3793,3795,3797,3799],{"class":648,"line":667},[646,3794,2592],{"class":652},[646,3796,657],{"class":656},[646,3798,2326],{"class":652},[646,3800,664],{"class":656},[748,3802,3803,3808],{},[751,3804,3805,3807],{},[643,3806,653],{}," est une fonction. On lui donne un texte, elle l'affiche.",[751,3809,3810,3812],{},[643,3811,2592],{}," est une fonction. On lui donne un nombre, elle produit une suite.",[600,3814,3815,3818,3819,3822,3823,833],{},[604,3816,3817],{},"Appeler une fonction"," consiste à écrire son nom suivi de parenthèses, en\nglissant éventuellement des ",[604,3820,3821],{},"valeurs"," entre les parenthèses. Ces valeurs\ns'appellent les ",[604,3824,3825],{},"arguments",[595,3827,3829],{"id":3828},"définir-sa-propre-fonction","Définir sa propre fonction",[600,3831,3832,3833,3836,3837,3840],{},"Pour créer une fonction, on utilise le mot-clé ",[643,3834,3835],{},"def"," (pour ",[872,3838,3839],{},"define",", définir) :",[636,3842,3844],{"className":638,"code":3843,"language":640,"meta":641,"style":641},"def saluer():\n    print(\"Bonjour\")\n    print(\"Comment allez-vous ?\")\n",[643,3845,3846,3857,3867],{"__ignoreMap":641},[646,3847,3848,3850,3854],{"class":648,"line":649},[646,3849,3835],{"class":794},[646,3851,3853],{"class":3852},"snPdu"," saluer",[646,3855,3856],{"class":656},"():\n",[646,3858,3859,3861,3863,3865],{"class":648,"line":667},[646,3860,1762],{"class":652},[646,3862,657],{"class":656},[646,3864,661],{"class":660},[646,3866,664],{"class":656},[646,3868,3869,3871,3873,3876],{"class":648,"line":679},[646,3870,1762],{"class":652},[646,3872,657],{"class":656},[646,3874,3875],{"class":660},"\"Comment allez-vous ?\"",[646,3877,664],{"class":656},[600,3879,3880],{},"Décodage :",[748,3882,3883,3897],{},[751,3884,3885,3888,3889,3892,3893,3896],{},[643,3886,3887],{},"def saluer():"," — on ",[604,3890,3891],{},"définit"," une fonction nommée ",[643,3894,3895],{},"saluer",". Les\nparenthèses vides signifient qu'elle ne prend pas de paramètre.",[751,3898,3899,3900,3903],{},"Les deux lignes indentées en dessous ",[604,3901,3902],{},"forment son corps"," : ce qu'elle fait\nquand on l'appelle.",[600,3905,3906,3909,3910,3912,3913,3916,3917,3919],{},[604,3907,3908],{},"Important"," : écrire ",[643,3911,3887],{}," ",[604,3914,3915],{},"ne fait rien"," — c'est une simple\ndéfinition. Pour exécuter le bloc, il faut ",[604,3918,3765],{}," la fonction :",[636,3921,3923],{"className":638,"code":3922,"language":640,"meta":641,"style":641},"def saluer():\n    print(\"Bonjour\")\n    print(\"Comment allez-vous ?\")\n\nsaluer()\nsaluer()\n",[643,3924,3925,3933,3943,3953,3957,3962],{"__ignoreMap":641},[646,3926,3927,3929,3931],{"class":648,"line":649},[646,3928,3835],{"class":794},[646,3930,3853],{"class":3852},[646,3932,3856],{"class":656},[646,3934,3935,3937,3939,3941],{"class":648,"line":667},[646,3936,1762],{"class":652},[646,3938,657],{"class":656},[646,3940,661],{"class":660},[646,3942,664],{"class":656},[646,3944,3945,3947,3949,3951],{"class":648,"line":679},[646,3946,1762],{"class":652},[646,3948,657],{"class":656},[646,3950,3875],{"class":660},[646,3952,664],{"class":656},[646,3954,3955],{"class":648,"line":919},[646,3956,994],{"emptyLinePlaceholder":993},[646,3958,3959],{"class":648,"line":1006},[646,3960,3961],{"class":656},"saluer()\n",[646,3963,3964],{"class":648,"line":1018},[646,3965,3961],{"class":656},[600,3967,937],{},[636,3969,3972],{"className":3970,"code":3971,"language":713,"meta":641},[711],"Bonjour\nComment allez-vous ?\nBonjour\nComment allez-vous ?\n",[643,3973,3971],{"__ignoreMap":641},[858,3975,3976],{"type":860},[600,3977,3978,3981,3982,1255,3985,3988,3989,3992,3993,3996],{},[604,3979,3980],{},"Définir ≠ Appeler."," La ",[604,3983,3984],{},"définition",[643,3986,3987],{},"def …",") prépare la fonction. L'",[604,3990,3991],{},"appel","\n(",[643,3994,3995],{},"saluer()",") déclenche son exécution. On peut définir une fonction et ne\njamais s'en servir ; le programme tournera quand même, juste sans elle.",[734,3998,4001,4006],{"correct":1459,"explanation":3999,"slug":4000},"Une fonction définie mais jamais appelée ne s'exécute jamais.","fonctions-c1",[740,4002,4003],{"v-slot:question":641},[600,4004,4005],{},"Avec une fonction definie comme def hello(): print('Hi'), combien de fois 'Hi' est-il affiché si on n'écrit jamais hello() ?",[740,4007,4008],{"v-slot:choices":641},[748,4009,4010,4012,4014,4016],{},[751,4011,1459],{},[751,4013,736],{},[751,4015,2152],{},[751,4017,4018],{},"erreur",[595,4020,4022],{"id":4021},"les-paramètres-personnaliser-la-fonction","Les paramètres — personnaliser la fonction",[600,4024,4025,4026,4029,4030,781],{},"Une fonction devient vraiment utile quand on peut lui ",[604,4027,4028],{},"donner des\ninformations"," à chaque appel. Cela se fait via les ",[604,4031,4032],{},"paramètres",[636,4034,4036],{"className":638,"code":4035,"language":640,"meta":641,"style":641},"def saluer(prenom):\n    print(\"Bonjour\", prenom)\n\nsaluer(\"Léa\")\nsaluer(\"Mehdi\")\nsaluer(\"Camille\")\n",[643,4037,4038,4047,4057,4061,4070,4079],{"__ignoreMap":641},[646,4039,4040,4042,4044],{"class":648,"line":649},[646,4041,3835],{"class":794},[646,4043,3853],{"class":3852},[646,4045,4046],{"class":656},"(prenom):\n",[646,4048,4049,4051,4053,4055],{"class":648,"line":667},[646,4050,1762],{"class":652},[646,4052,657],{"class":656},[646,4054,661],{"class":660},[646,4056,916],{"class":656},[646,4058,4059],{"class":648,"line":679},[646,4060,994],{"emptyLinePlaceholder":993},[646,4062,4063,4066,4068],{"class":648,"line":919},[646,4064,4065],{"class":656},"saluer(",[646,4067,822],{"class":660},[646,4069,664],{"class":656},[646,4071,4072,4074,4077],{"class":648,"line":1006},[646,4073,4065],{"class":656},[646,4075,4076],{"class":660},"\"Mehdi\"",[646,4078,664],{"class":656},[646,4080,4081,4083,4086],{"class":648,"line":1018},[646,4082,4065],{"class":656},[646,4084,4085],{"class":660},"\"Camille\"",[646,4087,664],{"class":656},[600,4089,2728],{},[636,4091,4094],{"className":4092,"code":4093,"language":713,"meta":641},[711],"Bonjour Léa\nBonjour Mehdi\nBonjour Camille\n",[643,4095,4093],{"__ignoreMap":641},[600,4097,4098],{},"À chaque appel :",[748,4100,4101,4112,4122],{},[751,4102,4103,4104,1286,4106,4108,4109,823],{},"la valeur entre parenthèses (",[643,4105,822],{},[643,4107,4076],{},", etc.) est l'",[604,4110,4111],{},"argument",[751,4113,4114,4115,4118,4119,4121],{},"elle est ",[604,4116,4117],{},"rangée"," dans la variable ",[643,4120,818],{}," le temps de l'exécution de la\nfonction ;",[751,4123,4124,4125,4128],{},"la ligne ",[643,4126,4127],{},"print(\"Bonjour\", prenom)"," utilise cette valeur.",[724,4130,4131],{},[600,4132,4133,4136,4137,4139,4140,4143,4144,1286,4146,4148],{},[604,4134,4135],{},"Paramètre"," = nom du « réceptacle » dans la définition (",[643,4138,818],{}," ici).\n",[604,4141,4142],{},"Argument"," = valeur réellement passée à l'appel (",[643,4145,822],{},[643,4147,4076],{},").\nCes deux mots sont souvent utilisés l'un pour l'autre dans la pratique.",[600,4150,4151,4152,4155],{},"Une fonction peut prendre ",[604,4153,4154],{},"plusieurs"," paramètres :",[636,4157,4159],{"className":638,"code":4158,"language":640,"meta":641,"style":641},"def saluer(prenom, age):\n    print(\"Bonjour\", prenom, \", vous avez\", age, \"ans\")\n\nsaluer(\"Léa\", 15)\nsaluer(\"Mehdi\", 16)\n",[643,4160,4161,4170,4190,4194,4206],{"__ignoreMap":641},[646,4162,4163,4165,4167],{"class":648,"line":649},[646,4164,3835],{"class":794},[646,4166,3853],{"class":3852},[646,4168,4169],{"class":656},"(prenom, age):\n",[646,4171,4172,4174,4176,4178,4181,4184,4186,4188],{"class":648,"line":667},[646,4173,1762],{"class":652},[646,4175,657],{"class":656},[646,4177,661],{"class":660},[646,4179,4180],{"class":656},", prenom, ",[646,4182,4183],{"class":660},"\", vous avez\"",[646,4185,929],{"class":656},[646,4187,932],{"class":660},[646,4189,664],{"class":656},[646,4191,4192],{"class":648,"line":679},[646,4193,994],{"emptyLinePlaceholder":993},[646,4195,4196,4198,4200,4202,4204],{"class":648,"line":919},[646,4197,4065],{"class":656},[646,4199,822],{"class":660},[646,4201,1286],{"class":656},[646,4203,832],{"class":652},[646,4205,664],{"class":656},[646,4207,4208,4210,4212,4214,4216],{"class":648,"line":1006},[646,4209,4065],{"class":656},[646,4211,4076],{"class":660},[646,4213,1286],{"class":656},[646,4215,3026],{"class":652},[646,4217,664],{"class":656},[600,4219,4220,4221,4224],{},"L'ordre ",[604,4222,4223],{},"compte"," : le premier argument est rangé dans le premier paramètre,\net ainsi de suite.",[595,4226,4228,4229],{"id":4227},"retourner-une-valeur-return","Retourner une valeur — ",[643,4230,4231],{},"return",[600,4233,4234,4235,4238,4239,4242,4243,4246,4247,4250],{},"Jusqu'ici, nos fonctions ne faisaient qu'",[604,4236,4237],{},"afficher",". Très souvent, on veut\nqu'une fonction ",[604,4240,4241],{},"calcule"," quelque chose et ",[604,4244,4245],{},"renvoie"," le résultat, pour\nqu'on puisse ",[604,4248,4249],{},"réutiliser"," cette valeur :",[636,4252,4254],{"className":638,"code":4253,"language":640,"meta":641,"style":641},"def carre(n):\n    return n * n\n",[643,4255,4256,4266],{"__ignoreMap":641},[646,4257,4258,4260,4263],{"class":648,"line":649},[646,4259,3835],{"class":794},[646,4261,4262],{"class":3852}," carre",[646,4264,4265],{"class":656},"(n):\n",[646,4267,4268,4271,4273,4275],{"class":648,"line":667},[646,4269,4270],{"class":794},"    return",[646,4272,2894],{"class":656},[646,4274,2913],{"class":794},[646,4276,4277],{"class":656}," n\n",[600,4279,4280,4281,4283,4284,4287],{},"Le mot-clé ",[643,4282,4231],{}," indique la ",[604,4285,4286],{},"valeur de retour"," : celle que la fonction\n« rend » à l'endroit où elle a été appelée.",[636,4289,4291],{"className":638,"code":4290,"language":640,"meta":641,"style":641},"def carre(n):\n    return n * n\n\nresultat = carre(5)\nprint(resultat)        # 25\nprint(carre(7) + 1)    # 49 + 1 = 50\n",[643,4292,4293,4301,4311,4315,4329,4339],{"__ignoreMap":641},[646,4294,4295,4297,4299],{"class":648,"line":649},[646,4296,3835],{"class":794},[646,4298,4262],{"class":3852},[646,4300,4265],{"class":656},[646,4302,4303,4305,4307,4309],{"class":648,"line":667},[646,4304,4270],{"class":794},[646,4306,2894],{"class":656},[646,4308,2913],{"class":794},[646,4310,4277],{"class":656},[646,4312,4313],{"class":648,"line":679},[646,4314,994],{"emptyLinePlaceholder":993},[646,4316,4317,4320,4322,4325,4327],{"class":648,"line":919},[646,4318,4319],{"class":656},"resultat ",[646,4321,780],{"class":794},[646,4323,4324],{"class":656}," carre(",[646,4326,1171],{"class":652},[646,4328,664],{"class":656},[646,4330,4331,4333,4336],{"class":648,"line":1006},[646,4332,653],{"class":652},[646,4334,4335],{"class":656},"(resultat)        ",[646,4337,4338],{"class":1304},"# 25\n",[646,4340,4341,4343,4346,4348,4351,4353,4356,4359],{"class":648,"line":1018},[646,4342,653],{"class":652},[646,4344,4345],{"class":656},"(carre(",[646,4347,1119],{"class":652},[646,4349,4350],{"class":656},") ",[646,4352,1033],{"class":794},[646,4354,4355],{"class":652}," 1",[646,4357,4358],{"class":656},")    ",[646,4360,4361],{"class":1304},"# 49 + 1 = 50\n",[600,4363,4364,4365,4367,4368,4371,4372,4375,4376,4379],{},"Vous voyez ici toute la puissance de ",[643,4366,4231],{}," : la fonction ",[643,4369,4370],{},"carre(5)"," est\nremplacée par la valeur ",[643,4373,4374],{},"25"," dans l'expression, et on peut ",[604,4377,4378],{},"réutiliser ce\nrésultat"," comme n'importe quel autre nombre.",[960,4381,4382],{},[636,4383,4385],{"className":638,"code":4384,"language":640,"meta":641,"style":641},"def carre(n):\n    return n * n\n\ndef cube(n):\n    return n * n * n\n\nprint(\"Carré de 4 :\", carre(4))\nprint(\"Cube de 3 :\", cube(3))\nprint(\"Somme :\", carre(4) + cube(3))\n",[643,4386,4387,4395,4405,4409,4418,4432,4436,4453,4469],{"__ignoreMap":641},[646,4388,4389,4391,4393],{"class":648,"line":649},[646,4390,3835],{"class":794},[646,4392,4262],{"class":3852},[646,4394,4265],{"class":656},[646,4396,4397,4399,4401,4403],{"class":648,"line":667},[646,4398,4270],{"class":794},[646,4400,2894],{"class":656},[646,4402,2913],{"class":794},[646,4404,4277],{"class":656},[646,4406,4407],{"class":648,"line":679},[646,4408,994],{"emptyLinePlaceholder":993},[646,4410,4411,4413,4416],{"class":648,"line":919},[646,4412,3835],{"class":794},[646,4414,4415],{"class":3852}," cube",[646,4417,4265],{"class":656},[646,4419,4420,4422,4424,4426,4428,4430],{"class":648,"line":1006},[646,4421,4270],{"class":794},[646,4423,2894],{"class":656},[646,4425,2913],{"class":794},[646,4427,2894],{"class":656},[646,4429,2913],{"class":794},[646,4431,4277],{"class":656},[646,4433,4434],{"class":648,"line":1018},[646,4435,994],{"emptyLinePlaceholder":993},[646,4437,4438,4440,4442,4445,4448,4450],{"class":648,"line":1023},[646,4439,653],{"class":652},[646,4441,657],{"class":656},[646,4443,4444],{"class":660},"\"Carré de 4 :\"",[646,4446,4447],{"class":656},", carre(",[646,4449,1116],{"class":652},[646,4451,4452],{"class":656},"))\n",[646,4454,4455,4457,4459,4462,4465,4467],{"class":648,"line":1039},[646,4456,653],{"class":652},[646,4458,657],{"class":656},[646,4460,4461],{"class":660},"\"Cube de 3 :\"",[646,4463,4464],{"class":656},", cube(",[646,4466,1100],{"class":652},[646,4468,4452],{"class":656},[646,4470,4471,4473,4475,4478,4480,4482,4484,4486,4489,4491],{"class":648,"line":2067},[646,4472,653],{"class":652},[646,4474,657],{"class":656},[646,4476,4477],{"class":660},"\"Somme :\"",[646,4479,4447],{"class":656},[646,4481,1116],{"class":652},[646,4483,4350],{"class":656},[646,4485,1033],{"class":794},[646,4487,4488],{"class":656}," cube(",[646,4490,1100],{"class":652},[646,4492,4452],{"class":656},[1080,4494,4495],{},[600,4496,4497,4506,4507,4510,4511,4514,4515,4517,4518,4520,4521,833],{},[604,4498,4499,4500,4502,4503],{},"Une fonction sans ",[643,4501,4231],{}," retourne implicitement ",[643,4504,4505],{},"None"," (une valeur\nspéciale qui signifie « rien »). Faire ",[643,4508,4509],{},"x = saluer(\"Léa\")"," après notre\ndéfinition initiale donne ",[643,4512,4513],{},"x"," valant ",[643,4516,4505],{},". Bien distinguer : ",[872,4519,4237],{},"\nn'est pas ",[872,4522,4523],{},"retourner",[734,4525,4528,4533],{"correct":2152,"explanation":4526,"slug":4527},"carre(3)=9, carre(4)=16, donc x = 9 + 16 = 25.","fonctions-c2",[740,4529,4530],{"v-slot:question":641},[600,4531,4532],{},"Que vaut x après : x = carre(3) + carre(4) (où carre(n) = n*n) ?",[740,4534,4535],{"v-slot:choices":641},[748,4536,4537,4539,4542,4544],{},[751,4538,1119],{},[751,4540,4541],{},"12",[751,4543,4374],{},[751,4545,4546],{},"49",[595,4548,4550],{"id":4549},"pourquoi-des-fonctions","Pourquoi des fonctions ?",[600,4552,4553],{},"Trois bénéfices majeurs :",[1140,4555,4556,4566],{},[1143,4557,4558],{},[1146,4559,4560,4563],{},[1149,4561,4562],{},"Bénéfice",[1149,4564,4565],{},"Explication",[1159,4567,4568,4578,4595],{},[1146,4569,4570,4575],{},[1164,4571,4572],{},[604,4573,4574],{},"Éviter la répétition",[1164,4576,4577],{},"Écrire une seule fois, appeler partout.",[1146,4579,4580,4585],{},[1164,4581,4582],{},[604,4583,4584],{},"Lisibilité",[1164,4586,4587,4590,4591,4594],{},[643,4588,4589],{},"aire_disque(r)"," est plus parlant que ",[643,4592,4593],{},"3.14159 * r * r"," éparpillé.",[1146,4596,4597,4602],{},[1164,4598,4599],{},[604,4600,4601],{},"Localiser les corrections",[1164,4603,4604,4605,4608],{},"Une erreur ? On la corrige ",[604,4606,4607],{},"à un seul endroit",", et tous les appels en bénéficient.",[4610,4611,4614],"card",{"icon":4612,"title":4613},"i-lucide-book-open","Vocabulaire — résumé",[748,4615,4616,4625,4633,4638,4643],{},[751,4617,4618,4621,4622],{},[604,4619,4620],{},"Définir"," une fonction : ",[643,4623,4624],{},"def nom(parametres): …",[751,4626,4627,4621,4630],{},[604,4628,4629],{},"Appeler",[643,4631,4632],{},"nom(arguments)",[751,4634,4635,4637],{},[604,4636,4135],{}," : variable nommée dans la définition.",[751,4639,4640,4642],{},[604,4641,4142],{}," : valeur réellement passée à l'appel.",[751,4644,4645,4648,4649,833],{},[604,4646,4647],{},"Valeur de retour"," : ce que la fonction « rend » via ",[643,4650,4231],{},[595,4652,4654],{"id":4653},"exemple-complet-combiner-ce-quon-a-vu","Exemple complet — combiner ce qu'on a vu",[600,4656,4657],{},"Voici un programme qui réunit fonctions, conditions et boucles :",[724,4659,4660],{},[600,4661,4662,4663,4666,4667,4670,4671,833],{},"Le crochet ",[643,4664,4665],{},"[ … ]"," désigne une ",[604,4668,4669],{},"liste"," — un nouveau type de valeur, étudié\nplus en détail en NSI. Ici, elle sert simplement à parcourir plusieurs notes\nsuccessivement avec ",[643,4672,2554],{},[960,4674,4675],{},[636,4676,4678],{"className":638,"code":4677,"language":640,"meta":641,"style":641},"def appreciation(note):\n    if note >= 16:\n        return \"Très bien\"\n    elif note >= 12:\n        return \"Bien\"\n    elif note >= 10:\n        return \"Passable\"\n    else:\n        return \"Insuffisant\"\n\nnotes = [8, 11, 14, 17, 9]\nfor n in notes:\n    print(n, \"->\", appreciation(n))\n",[643,4679,4680,4690,4703,4711,4724,4731,4743,4750,4757,4764,4768,4804,4816],{"__ignoreMap":641},[646,4681,4682,4684,4687],{"class":648,"line":649},[646,4683,3835],{"class":794},[646,4685,4686],{"class":3852}," appreciation",[646,4688,4689],{"class":656},"(note):\n",[646,4691,4692,4695,4697,4699,4701],{"class":648,"line":667},[646,4693,4694],{"class":794},"    if",[646,4696,1998],{"class":656},[646,4698,1680],{"class":794},[646,4700,2003],{"class":652},[646,4702,1757],{"class":656},[646,4704,4705,4708],{"class":648,"line":679},[646,4706,4707],{"class":794},"        return",[646,4709,4710],{"class":660}," \"Très bien\"\n",[646,4712,4713,4716,4718,4720,4722],{"class":648,"line":919},[646,4714,4715],{"class":794},"    elif",[646,4717,1998],{"class":656},[646,4719,1680],{"class":794},[646,4721,2027],{"class":652},[646,4723,1757],{"class":656},[646,4725,4726,4728],{"class":648,"line":1006},[646,4727,4707],{"class":794},[646,4729,4730],{"class":660}," \"Bien\"\n",[646,4732,4733,4735,4737,4739,4741],{"class":648,"line":1018},[646,4734,4715],{"class":794},[646,4736,1998],{"class":656},[646,4738,1680],{"class":794},[646,4740,2051],{"class":652},[646,4742,1757],{"class":656},[646,4744,4745,4747],{"class":648,"line":1023},[646,4746,4707],{"class":794},[646,4748,4749],{"class":660}," \"Passable\"\n",[646,4751,4752,4755],{"class":648,"line":1039},[646,4753,4754],{"class":794},"    else",[646,4756,1757],{"class":656},[646,4758,4759,4761],{"class":648,"line":2067},[646,4760,4707],{"class":794},[646,4762,4763],{"class":660}," \"Insuffisant\"\n",[646,4765,4766],{"class":648,"line":2074},[646,4767,994],{"emptyLinePlaceholder":993},[646,4769,4771,4774,4776,4779,4781,4783,4786,4788,4791,4793,4796,4798,4801],{"class":648,"line":4770},11,[646,4772,4773],{"class":656},"notes ",[646,4775,780],{"class":794},[646,4777,4778],{"class":656}," [",[646,4780,1122],{"class":652},[646,4782,1286],{"class":656},[646,4784,4785],{"class":652},"11",[646,4787,1286],{"class":656},[646,4789,4790],{"class":652},"14",[646,4792,1286],{"class":656},[646,4794,4795],{"class":652},"17",[646,4797,1286],{"class":656},[646,4799,4800],{"class":652},"9",[646,4802,4803],{"class":656},"]\n",[646,4805,4807,4809,4811,4813],{"class":648,"line":4806},12,[646,4808,2554],{"class":794},[646,4810,2894],{"class":656},[646,4812,2607],{"class":794},[646,4814,4815],{"class":656}," notes:\n",[646,4817,4819,4821,4824,4827],{"class":648,"line":4818},13,[646,4820,1762],{"class":652},[646,4822,4823],{"class":656},"(n, ",[646,4825,4826],{"class":660},"\"->\"",[646,4828,4829],{"class":656},", appreciation(n))\n",[600,4831,4832],{},"Sortie attendue :",[636,4834,4837],{"className":4835,"code":4836,"language":713,"meta":641},[711],"8 -> Insuffisant\n11 -> Passable\n14 -> Bien\n17 -> Très bien\n9 -> Insuffisant\n",[643,4838,4836],{"__ignoreMap":641},[600,4840,4841,4842,4845,4846,1255,4848,1286,4851,4853,4854,4856,4858,4859,4862,4863,4865],{},"On voit ici les quatre briques de ce chapitre travailler ensemble : une\n",[604,4843,4844],{},"séquence"," d'instructions, des ",[604,4847,621],{},[643,4849,4850],{},"notes",[643,4852,1293],{},"), une ",[604,4855,2550],{},[643,4857,2554],{},", des ",[604,4860,4861],{},"conditions"," dans la fonction, et une ",[604,4864,3728],{}," qui retourne\nune valeur.",[595,4867,1378],{"id":1377},[1080,4869,4870],{},[748,4871,4872,4885,4899,4914],{},[751,4873,4874,866,4877,4879,4880,4882,4883,833],{},[604,4875,4876],{},"Oublier les parenthèses à l'appel",[643,4878,3895],{}," (sans parenthèses) ne\ndéclenche ",[604,4881,842],{}," la fonction. Il faut ",[643,4884,3995],{},[751,4886,4887,866,4893,4895,4896,4898],{},[604,4888,2378,4889,2119,4891],{},[643,4890,653],{},[643,4892,4231],{},[643,4894,653],{}," affiche à l'écran, ",[643,4897,4231],{},"\nrenvoie une valeur utilisable. Ce sont deux choses très différentes.",[751,4900,4901,4904,4905,4907,4908,4911,4912,833],{},[604,4902,4903],{},"Définir une fonction après son premier appel"," : Python lit le fichier de\nhaut en bas. Si vous appelez ",[643,4906,4370],{}," avant la définition ",[643,4909,4910],{},"def carre(n):",",\nvous obtiendrez une ",[643,4913,1420],{},[751,4915,4916,4919],{},[604,4917,4918],{},"Oublier l'indentation du corps"," : comme partout en Python, le corps de\nla fonction est décalé de 4 espaces.",[595,4921,2392],{"id":2391},[600,4923,4924,4925,4928,4929,4932,4933,4936],{},"Une fonction peut ",[604,4926,4927],{},"appeler une autre fonction",", voire ",[604,4930,4931],{},"s'appeler elle-même","\n(récursivité, à découvrir en NSI). C'est la base de la ",[604,4934,4935],{},"programmation\nmodulaire"," : on construit de grands programmes en assemblant beaucoup de\npetites fonctions, chacune ayant un rôle clair et limité.",[1467,4938,4939],{},"html pre.shiki code .sBjJW, html code.shiki .sBjJW{--shiki-light:#005CC5;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sxrX7, html code.shiki .sxrX7{--shiki-light:#24292E;--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sIIMD, html code.shiki .sIIMD{--shiki-light:#032F62;--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .s8jYJ, html code.shiki .s8jYJ{--shiki-light:#D73A49;--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .snPdu, html code.shiki .snPdu{--shiki-light:#6F42C1;--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sCsY4, html code.shiki .sCsY4{--shiki-light:#6A737D;--shiki-default:#6A737D;--shiki-dark:#6A737D}",{"title":641,"searchDepth":667,"depth":667,"links":4941},[4942,4943,4944,4945,4946,4948,4949,4950,4951],{"id":597,"depth":667,"text":598},{"id":3771,"depth":667,"text":3772},{"id":3828,"depth":667,"text":3829},{"id":4021,"depth":667,"text":4022},{"id":4227,"depth":667,"text":4947},"Retourner une valeur — return",{"id":4549,"depth":667,"text":4550},{"id":4653,"depth":667,"text":4654},{"id":1377,"depth":667,"text":1378},{"id":2391,"depth":667,"text":2392},"Donner un nom à un bout de programme pour le réutiliser, avec paramètres et valeur de retour.",{},[4955,4957],{"slug":4000,"kind":1487,"question":4005,"choices":4956,"correct":1459,"multi":1489,"explanation":3999},[1459,736,2152,4018],{"slug":4527,"kind":1487,"question":4532,"choices":4958,"correct":2152,"multi":1489,"explanation":4526},[1119,4541,4374,4546],{"title":203,"description":4952},"XPA14Ai8FS0fjPH4UrzKM_iz0KQFIj4vQ2AmKBUHYtc",{"id":4962,"title":185,"bo":1482,"body":4963,"description":5092,"eval":1482,"extension":1483,"labo":1482,"meta":5093,"navigation":993,"path":186,"quizzes":5095,"readingTime":649,"seo":5096,"stem":187,"tp":1482,"__hash__":5097},"cours\u002F0.snt-2nde\u002Fsh-prog-notions\u002F0.index.md",{"type":592,"value":4964,"toc":5087},[4965,4969,4976,4987,5007,5011,5049,5053],[595,4966,4968],{"id":4967},"au-programme","Au programme",[600,4970,4971,4972,4975],{},"Vous avez probablement déjà entendu dire qu'« un ordinateur fait ce qu'on lui\ndemande ». Mais comment formule-t-on cette demande ? La réponse tient en un\nmot : ",[604,4973,4974],{},"programmer",". Programmer, c'est écrire une suite d'instructions\nsuffisamment précises pour qu'une machine sache les exécuter sans hésitation.",[600,4977,4978,4979,4982,4983,4986],{},"Ce chapitre est votre ",[604,4980,4981],{},"première rencontre avec le code",". Nous utiliserons le\nlangage ",[604,4984,4985],{},"Python",", l'un des plus utilisés au monde — autant dans les lycées\nque dans les laboratoires de recherche, en passant par les studios d'effets\nspéciaux. Vous n'avez besoin d'aucune connaissance préalable.",[600,4988,4989,4990,4992,4993,4995,4996,4999,5000,5002,5003,5006],{},"Vous découvrirez d'abord ce qu'est une ",[604,4991,721],{}," et comment\nmémoriser une valeur dans une ",[604,4994,772],{},". Vous apprendrez ensuite à faire\n",[604,4997,4998],{},"choisir"," un programme entre plusieurs chemins selon une condition. Vous\nverrez comment lui demander de ",[604,5001,2539],{}," une action, soit un nombre de fois\nconnu d'avance, soit jusqu'à ce qu'une situation se produise. Enfin, vous\nfabriquerez vos propres ",[604,5004,5005],{},"fonctions",", les briques qui rendent un programme\nlisible et réutilisable.",[595,5008,5010],{"id":5009},"objectifs","Objectifs",[4610,5012,5015],{"icon":5013,"title":5014},"i-lucide-target","À la fin du chapitre, vous saurez",[748,5016,5017,5020,5023,5032,5041],{},[751,5018,5019],{},"Écrire une suite d'instructions Python et prévoir ce qu'elle affiche.",[751,5021,5022],{},"Déclarer une variable, lui affecter une valeur, la réutiliser.",[751,5024,5025,5026,1286,5028,1286,5030,833],{},"Faire prendre une décision à un programme avec ",[643,5027,1523],{},[643,5029,1526],{},[643,5031,1530],{},[751,5033,5034,5035,5037,5038,5040],{},"Répéter une action avec ",[643,5036,2554],{}," (nombre de tours connu) ou ",[643,5039,2562],{}," (condition à vérifier).",[751,5042,5043,5044,5046,5047,833],{},"Définir une fonction avec ",[643,5045,3835],{},", lui passer des paramètres, l'appeler, récupérer son résultat avec ",[643,5048,4231],{},[595,5050,5052],{"id":5051},"plan","Plan",[2099,5054,5055,5060,5067,5076],{},[751,5056,5057,5059],{},[604,5058,191],{}," — le flot d'exécution, l'affectation.",[751,5061,5062,5064,5065,833],{},[604,5063,195],{}," — faire choisir le programme avec ",[643,5066,2188],{},[751,5068,5069,5071,5072,2119,5074,833],{},[604,5070,199],{}," — répéter avec ",[643,5073,2554],{},[643,5075,2562],{},[751,5077,5078,5080,5081,5083,5084,5086],{},[604,5079,395],{}," — ",[643,5082,3835],{},", paramètres, ",[643,5085,4231],{},", appels.",{"title":641,"searchDepth":667,"depth":667,"links":5088},[5089,5090,5091],{"id":4967,"depth":667,"text":4968},{"id":5009,"depth":667,"text":5010},{"id":5051,"depth":667,"text":5052},"Première rencontre avec Python — variables, conditions, boucles, fonctions. Les briques que vous retrouverez dans tout programme.",{"icon":5094},"i-lucide-code-2",[],{"title":185,"description":5092},"P4kuAm3iYbV7hzuAqS6AiDwLJcf-H0fmMYbK0NZq_O8",[5099,5374,5732,6104,6430],{"id":5100,"title":5101,"bo":5102,"body":5103,"description":5367,"eval":1482,"extension":1483,"labo":1482,"meta":5368,"navigation":1489,"path":5369,"quizzes":5370,"readingTime":649,"seo":5371,"stem":5372,"tp":1482,"__hash__":5373},"coursMemo\u002F0.snt-2nde\u002Fsh-prog-notions\u002F1.sequences-affectations.memo.md","Séquences et variables — l'essentiel",[589,590],{"type":592,"value":5104,"toc":5358},[5105,5109,5121,5125,5160,5164,5249,5253,5270,5284,5288,5314,5316,5340,5344,5355],[595,5106,5108],{"id":5107},"en-une-phrase","En une phrase",[600,5110,5111,5112,5115,5116,5118,5119,833],{},"Un programme exécute ses instructions ",[604,5113,5114],{},"ligne par ligne, dans l'ordre",", et\nune ",[604,5117,772],{}," est un nom qui retient une valeur — qu'on lui donne avec le\nsigne ",[643,5120,780],{},[595,5122,5124],{"id":5123},"à-mémoriser","À mémoriser",[748,5126,5127,5133,5139,5145,5154],{},[751,5128,5129,5132],{},[604,5130,5131],{},"Séquence"," = suite d'instructions exécutées l'une après l'autre.",[751,5134,5135,5138],{},[604,5136,5137],{},"Flot d'exécution"," = trajet de Python à travers les lignes du programme.",[751,5140,5141,5144],{},[604,5142,5143],{},"Variable"," = nom associé à une valeur en mémoire.",[751,5146,5147,5149,5150,5153],{},[604,5148,1151],{}," = ",[643,5151,5152],{},"nom = valeur",". La partie droite est évaluée d'abord, puis\nrangée dans la variable de gauche.",[751,5155,5156,5157,5159],{},"Une nouvelle affectation ",[604,5158,957],{}," la valeur précédente. Tout ce qui était\ndans la variable est perdu.",[595,5161,5163],{"id":5162},"syntaxe-python","Syntaxe Python",[1140,5165,5166,5175],{},[1143,5167,5168],{},[1146,5169,5170,5172],{},[1149,5171,2757],{},[1149,5173,5174],{},"Effet",[1159,5176,5177,5191,5204,5217,5236],{},[1146,5178,5179,5183],{},[1164,5180,5181],{},[643,5182,869],{},[1164,5184,5185,5186,5188,5189],{},"crée la variable ",[643,5187,818],{}," avec la chaîne ",[643,5190,822],{},[1146,5192,5193,5197],{},[1164,5194,5195],{},[643,5196,1416],{},[1164,5198,5185,5199,5201,5202],{},[643,5200,828],{}," avec le nombre ",[643,5203,832],{},[1146,5205,5206,5211],{},[1164,5207,5208],{},[643,5209,5210],{},"age = age + 1",[1164,5212,5213,5214,5216],{},"augmente ",[643,5215,828],{}," de 1 (15 devient 16)",[1146,5218,5219,5224],{},[1164,5220,5221],{},[643,5222,5223],{},"total = a + b",[1164,5225,5226,5227,2119,5229,5232,5233],{},"additionne les valeurs actuelles de ",[643,5228,1285],{},[643,5230,5231],{},"b"," dans ",[643,5234,5235],{},"total",[1146,5237,5238,5243],{},[1164,5239,5240],{},[643,5241,5242],{},"print(prenom)",[1164,5244,5245,5246,5248],{},"affiche la valeur de ",[643,5247,818],{}," à l'écran",[595,5250,5252],{"id":5251},"lecture-mentale-dune-affectation","Lecture mentale d'une affectation",[636,5254,5256],{"className":638,"code":5255,"language":640,"meta":641,"style":641},"score = score + 5\n",[643,5257,5258],{"__ignoreMap":641},[646,5259,5260,5262,5264,5266,5268],{"class":648,"line":649},[646,5261,971],{"class":656},[646,5263,780],{"class":794},[646,5265,1030],{"class":656},[646,5267,1033],{"class":794},[646,5269,1036],{"class":652},[600,5271,5272,5273,5280,5281,5283],{},"Se lit : ",[872,5274,1092,5275,5277,5278,880],{},[643,5276,1062],{},", puis range le résultat dans ",[643,5279,1074],{},". La\nflèche va ",[604,5282,3481],{}," de droite à gauche.",[595,5285,5287],{"id":5286},"règles-de-nommage","Règles de nommage",[748,5289,5290,5296,5299,5306],{},[751,5291,5292,5293,5295],{},"lettres, chiffres, ",[643,5294,1258],{}," ; pas d'accent ni d'espace",[751,5297,5298],{},"ne commence jamais par un chiffre",[751,5300,5301,5302,1366,5304],{},"nom parlant : ",[643,5303,828],{},[643,5305,1285],{},[751,5307,5308,5309,1255,5311,5313],{},"convention : ",[643,5310,1361],{},[643,5312,1365],{},")",[595,5315,1378],{"id":1377},[748,5317,5318,5326,5331],{},[751,5319,5320,5322,5323,5325],{},[643,5321,780],{}," affecte, ",[643,5324,1392],{}," comparera (à venir) — ne pas confondre.",[751,5327,5328,5329,833],{},"Utiliser une variable avant de l'avoir affectée → ",[643,5330,1420],{},[751,5332,5333,5336,5337,5339],{},[643,5334,5335],{},"\"15\""," (chaîne) ≠ ",[643,5338,832],{}," (nombre) : les opérations possibles diffèrent.",[595,5341,5343],{"id":5342},"réflexe-à-avoir","Réflexe à avoir",[600,5345,5346,5347,5350,5351,5354],{},"Quand vous lisez un programme, suivez les variables ",[604,5348,5349],{},"du haut vers le bas"," et\nnotez à côté de chaque ligne ce que contient chaque variable à ce moment. C'est\nla base du ",[604,5352,5353],{},"trace"," mental.",[1467,5356,5357],{},"html pre.shiki code .sxrX7, html code.shiki .sxrX7{--shiki-light:#24292E;--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s8jYJ, html code.shiki .s8jYJ{--shiki-light:#D73A49;--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sBjJW, html code.shiki .sBjJW{--shiki-light:#005CC5;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":641,"searchDepth":667,"depth":667,"links":5359},[5360,5361,5362,5363,5364,5365,5366],{"id":5107,"depth":667,"text":5108},{"id":5123,"depth":667,"text":5124},{"id":5162,"depth":667,"text":5163},{"id":5251,"depth":667,"text":5252},{"id":5286,"depth":667,"text":5287},{"id":1377,"depth":667,"text":1378},{"id":5342,"depth":667,"text":5343},"Mémo de révision sur le flot d'exécution et l'affectation.",{},"\u002Fsnt-2nde\u002Fsh-prog-notions\u002Fsequences-affectations.memo",[],{"title":5101,"description":5367},"0.snt-2nde\u002Fsh-prog-notions\u002F1.sequences-affectations.memo","7gA4zSOFIbTHIWvqS8kXwS3tS7fjqYzUY4pT7TQaJbA",{"id":5375,"title":5376,"bo":5377,"body":5378,"description":5725,"eval":1482,"extension":1483,"labo":1482,"meta":5726,"navigation":1489,"path":5727,"quizzes":5728,"readingTime":649,"seo":5729,"stem":5730,"tp":1482,"__hash__":5731},"coursMemo\u002F0.snt-2nde\u002Fsh-prog-notions\u002F2.conditionnelles.memo.md","Instructions conditionnelles — l'essentiel",[1499],{"type":592,"value":5379,"toc":5716},[5380,5382,5403,5405,5450,5454,5507,5518,5520,5558,5561,5605,5609,5661,5663,5696,5698,5713],[595,5381,5108],{"id":5107},[600,5383,5384,1286,5386,1286,5388,5390,5391,5393,5394,1255,5396,5398,5399,1255,5401,1374],{},[643,5385,1523],{},[643,5387,1526],{},[643,5389,1530],{}," permettent à un programme de ",[604,5392,4998],{}," quelle\ninstruction exécuter selon qu'une condition est ",[604,5395,2975],{},[643,5397,1550],{},") ou\n",[604,5400,3074],{},[643,5402,1554],{},[595,5404,5124],{"id":5123},[748,5406,5407,5416,5426,5435,5447],{},[751,5408,769,5409,5411,5412,2360,5414,833],{},[604,5410,1546],{}," s'évalue à ",[643,5413,1550],{},[643,5415,1554],{},[751,5417,5418,5419,5421,5422,5425],{},"Le bloc d'un ",[643,5420,1523],{}," est exécuté ",[604,5423,5424],{},"seulement"," si la condition est vraie.",[751,5427,1926,5428,5430,5431,5434],{},[643,5429,1530],{},", l'un ",[604,5432,5433],{},"OU"," l'autre bloc s'exécute, jamais les deux.",[751,5436,1926,5437,5439,5440,5443,5444,833],{},[643,5438,1526],{},", Python teste les conditions ",[604,5441,5442],{},"dans l'ordre"," et s'arrête à\n",[604,5445,5446],{},"la première vraie",[751,5448,5449],{},"L'indentation (4 espaces) délimite les blocs. Obligatoire.",[595,5451,5453],{"id":5452},"opérateurs-de-comparaison","Opérateurs de comparaison",[1140,5455,5456,5464],{},[1143,5457,5458],{},[1146,5459,5460,5462],{},[1149,5461,1568],{},[1149,5463,1571],{},[1159,5465,5466,5475,5484,5496],{},[1146,5467,5468,5472],{},[1164,5469,5470],{},[643,5471,1392],{},[1164,5473,5474],{},"égal à",[1146,5476,5477,5481],{},[1164,5478,5479],{},[643,5480,1604],{},[1164,5482,5483],{},"différent de",[1146,5485,5486,5493],{},[1164,5487,5488,5490,5491],{},[643,5489,1623],{}," \u002F ",[643,5492,1642],{},[1164,5494,5495],{},"strictement inférieur \u002F supérieur",[1146,5497,5498,5504],{},[1164,5499,5500,5490,5502],{},[643,5501,1661],{},[643,5503,1680],{},[1164,5505,5506],{},"inférieur ou égal \u002F supérieur ou égal",[600,5508,5509,866,5512,5514,5515,5517],{},[604,5510,5511],{},"Attention",[643,5513,780],{}," (affectation) ≠ ",[643,5516,1392],{}," (comparaison).",[595,5519,5163],{"id":5162},[636,5521,5523],{"className":638,"code":5522,"language":640,"meta":641,"style":641},"if condition:\n    instruction\nelif autre_condition:\n    instruction\nelse:\n    instruction\n",[643,5524,5525,5532,5537,5544,5548,5554],{"__ignoreMap":641},[646,5526,5527,5529],{"class":648,"line":649},[646,5528,1523],{"class":794},[646,5530,5531],{"class":656}," condition:\n",[646,5533,5534],{"class":648,"line":667},[646,5535,5536],{"class":656},"    instruction\n",[646,5538,5539,5541],{"class":648,"line":679},[646,5540,1526],{"class":794},[646,5542,5543],{"class":656}," autre_condition:\n",[646,5545,5546],{"class":648,"line":919},[646,5547,5536],{"class":656},[646,5549,5550,5552],{"class":648,"line":1006},[646,5551,1530],{"class":794},[646,5553,1757],{"class":656},[646,5555,5556],{"class":648,"line":1018},[646,5557,5536],{"class":656},[600,5559,5560],{},"Exemple complet :",[636,5562,5564],{"className":638,"code":5563,"language":640,"meta":641,"style":641},"if note >= 10:\n    print(\"Reçu\")\nelse:\n    print(\"À retravailler\")\n",[643,5565,5566,5578,5589,5595],{"__ignoreMap":641},[646,5567,5568,5570,5572,5574,5576],{"class":648,"line":649},[646,5569,1523],{"class":794},[646,5571,1998],{"class":656},[646,5573,1680],{"class":794},[646,5575,2051],{"class":652},[646,5577,1757],{"class":656},[646,5579,5580,5582,5584,5587],{"class":648,"line":667},[646,5581,1762],{"class":652},[646,5583,657],{"class":656},[646,5585,5586],{"class":660},"\"Reçu\"",[646,5588,664],{"class":656},[646,5590,5591,5593],{"class":648,"line":679},[646,5592,1530],{"class":794},[646,5594,1757],{"class":656},[646,5596,5597,5599,5601,5603],{"class":648,"line":919},[646,5598,1762],{"class":652},[646,5600,657],{"class":656},[646,5602,2081],{"class":660},[646,5604,664],{"class":656},[595,5606,5608],{"id":5607},"opérateurs-logiques-combinaison","Opérateurs logiques (combinaison)",[1140,5610,5611,5622],{},[1143,5612,5613],{},[1146,5614,5615,5617,5619],{},[1149,5616,1568],{},[1149,5618,5174],{},[1149,5620,5621],{},"Vrai si",[1159,5623,5624,5636,5648],{},[1146,5625,5626,5630,5633],{},[1164,5627,5628],{},[643,5629,2402],{},[1164,5631,5632],{},"et",[1164,5634,5635],{},"les deux conditions sont vraies",[1146,5637,5638,5642,5645],{},[1164,5639,5640],{},[643,5641,2406],{},[1164,5643,5644],{},"ou",[1164,5646,5647],{},"au moins une condition est vraie",[1146,5649,5650,5655,5658],{},[1164,5651,5652],{},[643,5653,5654],{},"not",[1164,5656,5657],{},"non",[1164,5659,5660],{},"la condition est fausse",[595,5662,1378],{"id":1377},[748,5664,5665,5672,5683,5686],{},[751,5666,5667,2345,5669,5671],{},[643,5668,780],{},[643,5670,1392],{}," dans la condition → erreur.",[751,5673,2353,5674,5676,5677,5490,5679,5490,5681,2363],{},[643,5675,2356],{}," à la fin de ",[643,5678,1523],{},[643,5680,1526],{},[643,5682,1530],{},[751,5684,5685],{},"Indentation oubliée ou incohérente → erreur.",[751,5687,5688,5690,5691,5693,5694,833],{},[643,5689,1526],{}," teste une condition ; ",[643,5692,1530],{}," n'en teste ",[604,5695,842],{},[595,5697,5343],{"id":5342},[600,5699,5700,5701,5704,5705,5708,5709,5712],{},"Quand vous lisez une cascade ",[643,5702,5703],{},"if \u002F elif \u002F else",", listez mentalement les cas\npossibles et vérifiez que ",[604,5706,5707],{},"chaque"," valeur d'entrée tombe dans ",[604,5710,5711],{},"exactement\nune"," branche.",[1467,5714,5715],{},"html pre.shiki code .s8jYJ, html code.shiki .s8jYJ{--shiki-light:#D73A49;--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sxrX7, html code.shiki .sxrX7{--shiki-light:#24292E;--shiki-default:#24292E;--shiki-dark:#E1E4E8}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sBjJW, html code.shiki .sBjJW{--shiki-light:#005CC5;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sIIMD, html code.shiki .sIIMD{--shiki-light:#032F62;--shiki-default:#032F62;--shiki-dark:#9ECBFF}",{"title":641,"searchDepth":667,"depth":667,"links":5717},[5718,5719,5720,5721,5722,5723,5724],{"id":5107,"depth":667,"text":5108},{"id":5123,"depth":667,"text":5124},{"id":5452,"depth":667,"text":5453},{"id":5162,"depth":667,"text":5163},{"id":5607,"depth":667,"text":5608},{"id":1377,"depth":667,"text":1378},{"id":5342,"depth":667,"text":5343},"Mémo de révision sur if, elif, else et les opérateurs de comparaison.",{},"\u002Fsnt-2nde\u002Fsh-prog-notions\u002Fconditionnelles.memo",[],{"title":5376,"description":5725},"0.snt-2nde\u002Fsh-prog-notions\u002F2.conditionnelles.memo","xXH64qP_hPaA7ET52E_9MclYuTQPNXnkn-TMCaSyLEk",{"id":5733,"title":5734,"bo":5735,"body":5736,"description":6097,"eval":1482,"extension":1483,"labo":1482,"meta":6098,"navigation":1489,"path":6099,"quizzes":6100,"readingTime":649,"seo":6101,"stem":6102,"tp":1482,"__hash__":6103},"coursMemo\u002F0.snt-2nde\u002Fsh-prog-notions\u002F3.boucles.memo.md","Boucles — l'essentiel",[2526],{"type":592,"value":5737,"toc":6088},[5738,5740,5756,5758,5806,5808,5884,5888,5967,5971,6044,6046,6076,6078,6085],[595,5739,5108],{"id":5107},[600,5741,5742,5744,5745,5748,5749,5751,5752,5755],{},[643,5743,2554],{}," répète un ",[604,5746,5747],{},"nombre de tours connu d'avance"," (boucle bornée). ",[643,5750,2562],{},"\nrépète ",[604,5753,5754],{},"tant qu'une condition reste vraie"," (boucle non bornée).",[595,5757,5124],{"id":5123},[748,5759,5760,5772,5782,5791,5797],{},[751,5761,5762,5765,5766,5769,5770,833],{},[604,5763,5764],{},"Bornée"," : nombre de tours ",[604,5767,5768],{},"connu à l'écriture"," → ",[643,5771,2554],{},[751,5773,5774,5765,5777,5769,5780,833],{},[604,5775,5776],{},"Non bornée",[604,5778,5779],{},"dépend de l'exécution",[643,5781,2562],{},[751,5783,5784,5786,5787,5790],{},[643,5785,3599],{}," produit les nombres ",[604,5788,5789],{},"0, 1, … n-1"," (n valeurs, n exclu).",[751,5792,5793,5794,833],{},"Le corps d'une boucle est ",[604,5795,5796],{},"indenté de 4 espaces",[751,5798,5799,5800,1286,5802,5805],{},"Dans ",[643,5801,2562],{},[604,5803,5804],{},"quelque chose dans la boucle doit faire évoluer"," la\ncondition, sinon → boucle infinie.",[595,5807,5163],{"id":5162},[1140,5809,5810,5819],{},[1143,5811,5812],{},[1146,5813,5814,5817],{},[1149,5815,5816],{},"Forme",[1149,5818,5174],{},[1159,5820,5821,5834,5846,5858,5871],{},[1146,5822,5823,5828],{},[1164,5824,5825],{},[643,5826,5827],{},"for i in range(5):",[1164,5829,5830,5831,5833],{},"tours pour ",[643,5832,2649],{}," = 0, 1, 2, 3, 4",[1146,5835,5836,5841],{},[1164,5837,5838],{},[643,5839,5840],{},"for i in range(1, 6):",[1164,5842,5830,5843,5845],{},[643,5844,2649],{}," = 1, 2, 3, 4, 5",[1146,5847,5848,5853],{},[1164,5849,5850],{},[643,5851,5852],{},"for i in range(0, 10, 2):",[1164,5854,5830,5855,5857],{},[643,5856,2649],{}," = 0, 2, 4, 6, 8",[1146,5859,5860,5865],{},[1164,5861,5862],{},[643,5863,5864],{},"for lettre in mot:",[1164,5866,5867,5868],{},"tour par lettre de la chaîne ",[643,5869,5870],{},"mot",[1146,5872,5873,5878],{},[1164,5874,5875],{},[643,5876,5877],{},"while condition:",[1164,5879,5880,5881,5883],{},"tours tant que ",[643,5882,1546],{}," est vraie",[595,5885,5887],{"id":5886},"exemples-types","Exemples types",[636,5889,5891],{"className":638,"code":5890,"language":640,"meta":641,"style":641},"# Bornée : afficher 10 fois \"Salut\"\nfor i in range(10):\n    print(\"Salut\")\n\n# Non bornée : doubler n jusqu'à dépasser 1000\nn = 1\nwhile n \u003C 1000:\n    n = n * 2\n",[643,5892,5893,5898,5914,5925,5929,5934,5942,5955],{"__ignoreMap":641},[646,5894,5895],{"class":648,"line":649},[646,5896,5897],{"class":1304},"# Bornée : afficher 10 fois \"Salut\"\n",[646,5899,5900,5902,5904,5906,5908,5910,5912],{"class":648,"line":667},[646,5901,2554],{"class":794},[646,5903,2604],{"class":656},[646,5905,2607],{"class":794},[646,5907,2610],{"class":652},[646,5909,657],{"class":656},[646,5911,2326],{"class":652},[646,5913,2617],{"class":656},[646,5915,5916,5918,5920,5923],{"class":648,"line":679},[646,5917,1762],{"class":652},[646,5919,657],{"class":656},[646,5921,5922],{"class":660},"\"Salut\"",[646,5924,664],{"class":656},[646,5926,5927],{"class":648,"line":919},[646,5928,994],{"emptyLinePlaceholder":993},[646,5930,5931],{"class":648,"line":1006},[646,5932,5933],{"class":1304},"# Non bornée : doubler n jusqu'à dépasser 1000\n",[646,5935,5936,5938,5940],{"class":648,"line":1018},[646,5937,2878],{"class":656},[646,5939,780],{"class":794},[646,5941,2883],{"class":652},[646,5943,5944,5946,5948,5950,5953],{"class":648,"line":1023},[646,5945,2562],{"class":794},[646,5947,2894],{"class":656},[646,5949,1623],{"class":794},[646,5951,5952],{"class":652}," 1000",[646,5954,1757],{"class":656},[646,5956,5957,5959,5961,5963,5965],{"class":648,"line":1039},[646,5958,2906],{"class":656},[646,5960,780],{"class":794},[646,5962,2894],{"class":656},[646,5964,2913],{"class":794},[646,5966,2916],{"class":652},[595,5968,5970],{"id":5969},"comment-choisir","Comment choisir ?",[1140,5972,5973,5986],{},[1143,5974,5975],{},[1146,5976,5977,5980,5983],{},[1149,5978,5979],{},"Question",[1149,5981,5982],{},"Boucle",[1149,5984,5985],{},"Mini-snippet",[1159,5987,5988,6002,6016,6030],{},[1146,5989,5990,5993,5997],{},[1164,5991,5992],{},"« Faire ceci 50 fois »",[1164,5994,5995],{},[643,5996,2554],{},[1164,5998,5999],{},[643,6000,6001],{},"for i in range(50): ...",[1146,6003,6004,6007,6011],{},[1164,6005,6006],{},"« Pour chaque lettre du mot »",[1164,6008,6009],{},[643,6010,2554],{},[1164,6012,6013],{},[643,6014,6015],{},"for lettre in mot: ...",[1146,6017,6018,6021,6025],{},[1164,6019,6020],{},"« Tant que le joueur a des points »",[1164,6022,6023],{},[643,6024,2562],{},[1164,6026,6027],{},[643,6028,6029],{},"while points > 0: ...",[1146,6031,6032,6035,6039],{},[1164,6033,6034],{},"« Jusqu'à ce qu'on tape la bonne réponse »",[1164,6036,6037],{},[643,6038,2562],{},[1164,6040,6041],{},[643,6042,6043],{},"while reponse != \"ok\": ...",[595,6045,1378],{"id":1377},[748,6047,6048,6061,6067],{},[751,6049,6050,6052,6053,3912,6056,1426,6058,6060],{},[643,6051,3599],{}," s'arrête ",[604,6054,6055],{},"avant",[643,6057,1293],{},[643,6059,2653],{}," ≠ « de 1 à 5 ».",[751,6062,6063,6064,6066],{},"Boucle infinie : aucune variable de la condition ",[643,6065,2562],{}," n'évolue.",[751,6068,2378,6069,2119,6072,6075],{},[604,6070,6071],{},"borné",[604,6073,6074],{},"fini",". Une boucle non bornée peut être finie ;\nc'est juste qu'on ignore son nombre exact de tours.",[595,6077,5343],{"id":5342},[600,6079,6080,6081,6084],{},"Pour comprendre une boucle, ",[604,6082,6083],{},"tracer un tableau"," colonnes = variables,\nlignes = tours. Pour chaque ligne, calculer la nouvelle valeur. C'est la\nmanière la plus fiable de prédire le résultat sans exécuter le programme.",[1467,6086,6087],{},"html pre.shiki code .sCsY4, html code.shiki .sCsY4{--shiki-light:#6A737D;--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .s8jYJ, html code.shiki .s8jYJ{--shiki-light:#D73A49;--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sxrX7, html code.shiki .sxrX7{--shiki-light:#24292E;--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sBjJW, html code.shiki .sBjJW{--shiki-light:#005CC5;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sIIMD, html code.shiki .sIIMD{--shiki-light:#032F62;--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":641,"searchDepth":667,"depth":667,"links":6089},[6090,6091,6092,6093,6094,6095,6096],{"id":5107,"depth":667,"text":5108},{"id":5123,"depth":667,"text":5124},{"id":5162,"depth":667,"text":5163},{"id":5886,"depth":667,"text":5887},{"id":5969,"depth":667,"text":5970},{"id":1377,"depth":667,"text":1378},{"id":5342,"depth":667,"text":5343},"Mémo de révision sur for, while, range et la distinction bornée\u002Fnon bornée.",{},"\u002Fsnt-2nde\u002Fsh-prog-notions\u002Fboucles.memo",[],{"title":5734,"description":6097},"0.snt-2nde\u002Fsh-prog-notions\u002F3.boucles.memo","6lX-_TA3TM_8vWnU_7F2r-W_1iLQiktoqV4xitHaoYY",{"id":6105,"title":6106,"bo":6107,"body":6108,"description":6423,"eval":1482,"extension":1483,"labo":1482,"meta":6424,"navigation":1489,"path":6425,"quizzes":6426,"readingTime":649,"seo":6427,"stem":6428,"tp":1482,"__hash__":6429},"coursMemo\u002F0.snt-2nde\u002Fsh-prog-notions\u002F4.fonctions.memo.md","Fonctions — l'essentiel",[3719],{"type":592,"value":6109,"toc":6414},[6110,6112,6132,6134,6183,6185,6263,6267,6326,6328,6367,6369,6395,6397,6411],[595,6111,5108],{"id":5107},[600,6113,769,6114,6116,6117,6120,6121,6123,6124,6126,6127,6129,6130,833],{},[604,6115,3728],{}," est un bout de programme ",[604,6118,6119],{},"nommé"," qu'on peut ",[604,6122,3765],{},"\nplusieurs fois, à qui on peut donner des ",[604,6125,4032],{},", et qui peut\n",[604,6128,4523],{}," une valeur via ",[643,6131,4231],{},[595,6133,5124],{"id":5123},[748,6135,6136,6144,6153,6156,6165,6171],{},[751,6137,6138,6140,6141,6143],{},[604,6139,4620],{}," ≠ ",[604,6142,3765],{},". La définition prépare, l'appel exécute.",[751,6145,6146,6147,6149,6150,6152],{},"Les ",[604,6148,4032],{}," sont les noms dans la définition. Les ",[604,6151,3825],{}," sont\nles valeurs réellement passées.",[751,6154,6155],{},"L'ordre des arguments correspond à l'ordre des paramètres.",[751,6157,6158,6160,6161,6164],{},[643,6159,4231],{}," rend une valeur ",[604,6162,6163],{},"utilisable"," à l'endroit de l'appel.",[751,6166,4499,6167,4502,6169,833],{},[643,6168,4231],{},[643,6170,4505],{},[751,6172,6173,3912,6175,1286,6178,3912,6180,6182],{},[643,6174,653],{},[604,6176,6177],{},"affiche",[643,6179,4231],{},[604,6181,4245],{},". Pas la même chose.",[595,6184,5163],{"id":5162},[1140,6186,6187,6196],{},[1143,6188,6189],{},[1146,6190,6191,6194],{},[1149,6192,6193],{},"Construction",[1149,6195,5174],{},[1159,6197,6198,6208,6218,6228,6238,6251],{},[1146,6199,6200,6205],{},[1164,6201,6202],{},[643,6203,6204],{},"def nom():",[1164,6206,6207],{},"définit une fonction sans paramètre",[1146,6209,6210,6215],{},[1164,6211,6212],{},[643,6213,6214],{},"def nom(p1, p2):",[1164,6216,6217],{},"définit une fonction à 2 paramètres",[1146,6219,6220,6225],{},[1164,6221,6222],{},[643,6223,6224],{},"nom()",[1164,6226,6227],{},"appelle la fonction (sans argument)",[1146,6229,6230,6235],{},[1164,6231,6232],{},[643,6233,6234],{},"nom(\"Léa\", 15)",[1164,6236,6237],{},"appelle avec 2 arguments",[1146,6239,6240,6245],{},[1164,6241,6242],{},[643,6243,6244],{},"return valeur",[1164,6246,6247,6248],{},"termine la fonction et rend ",[643,6249,6250],{},"valeur",[1146,6252,6253,6258],{},[1164,6254,6255],{},[643,6256,6257],{},"x = nom(arg)",[1164,6259,6260,6261],{},"stocke la valeur retournée dans ",[643,6262,4513],{},[595,6264,6266],{"id":6265},"anatomie-dune-fonction","Anatomie d'une fonction",[636,6268,6270],{"className":638,"code":6269,"language":640,"meta":641,"style":641},"def carre(n):          # def, nom, paramètre\n    return n * n       # corps indenté, return\n\nresultat = carre(5)    # appel — n vaut 5 le temps de l'exécution\nprint(resultat)        # affiche 25\n",[643,6271,6272,6284,6298,6302,6317],{"__ignoreMap":641},[646,6273,6274,6276,6278,6281],{"class":648,"line":649},[646,6275,3835],{"class":794},[646,6277,4262],{"class":3852},[646,6279,6280],{"class":656},"(n):          ",[646,6282,6283],{"class":1304},"# def, nom, paramètre\n",[646,6285,6286,6288,6290,6292,6295],{"class":648,"line":667},[646,6287,4270],{"class":794},[646,6289,2894],{"class":656},[646,6291,2913],{"class":794},[646,6293,6294],{"class":656}," n       ",[646,6296,6297],{"class":1304},"# corps indenté, return\n",[646,6299,6300],{"class":648,"line":679},[646,6301,994],{"emptyLinePlaceholder":993},[646,6303,6304,6306,6308,6310,6312,6314],{"class":648,"line":919},[646,6305,4319],{"class":656},[646,6307,780],{"class":794},[646,6309,4324],{"class":656},[646,6311,1171],{"class":652},[646,6313,4358],{"class":656},[646,6315,6316],{"class":1304},"# appel — n vaut 5 le temps de l'exécution\n",[646,6318,6319,6321,6323],{"class":648,"line":1006},[646,6320,653],{"class":652},[646,6322,4335],{"class":656},[646,6324,6325],{"class":1304},"# affiche 25\n",[595,6327,4550],{"id":4549},[1140,6329,6330,6338],{},[1143,6331,6332],{},[1146,6333,6334,6336],{},[1149,6335,4562],{},[1149,6337,4565],{},[1159,6339,6340,6347,6359],{},[1146,6341,6342,6344],{},[1164,6343,4574],{},[1164,6345,6346],{},"écrire une fois, appeler partout",[1146,6348,6349,6351],{},[1164,6350,4584],{},[1164,6352,6353,6355,6356],{},[643,6354,4589],{}," parle mieux que ",[643,6357,6358],{},"3.14*r*r",[1146,6360,6361,6364],{},[1164,6362,6363],{},"Maintenance",[1164,6365,6366],{},"une seule correction profite à tous les appels",[595,6368,1378],{"id":1377},[748,6370,6371,6377,6383,6392],{},[751,6372,6373,6374,6376],{},"Appeler sans parenthèses : ",[643,6375,3895],{}," ne déclenche pas la fonction.",[751,6378,2378,6379,2119,6381,833],{},[643,6380,653],{},[643,6382,4231],{},[751,6384,6385,6386,6389,6390,833],{},"Définir une fonction ",[604,6387,6388],{},"après"," son premier appel → ",[643,6391,1420],{},[751,6393,6394],{},"Oublier l'indentation du corps.",[595,6396,5343],{"id":5342},[600,6398,6399,6400,6403,6404,6407,6408,6410],{},"Quand vous voyez ",[643,6401,6402],{},"f(x)"," dans une expression, lisez-le comme ",[604,6405,6406],{},"« la valeur\nretournée par f appelée avec x »",". Une fois cette valeur calculée, elle\n",[604,6409,957],{}," l'appel dans l'expression environnante.",[1467,6412,6413],{},"html pre.shiki code .s8jYJ, html code.shiki .s8jYJ{--shiki-light:#D73A49;--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .snPdu, html code.shiki .snPdu{--shiki-light:#6F42C1;--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sxrX7, html code.shiki .sxrX7{--shiki-light:#24292E;--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sCsY4, html code.shiki .sCsY4{--shiki-light:#6A737D;--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sBjJW, html code.shiki .sBjJW{--shiki-light:#005CC5;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":641,"searchDepth":667,"depth":667,"links":6415},[6416,6417,6418,6419,6420,6421,6422],{"id":5107,"depth":667,"text":5108},{"id":5123,"depth":667,"text":5124},{"id":5162,"depth":667,"text":5163},{"id":6265,"depth":667,"text":6266},{"id":4549,"depth":667,"text":4550},{"id":1377,"depth":667,"text":1378},{"id":5342,"depth":667,"text":5343},"Mémo de révision sur def, paramètres, return et appels de fonctions.",{},"\u002Fsnt-2nde\u002Fsh-prog-notions\u002Ffonctions.memo",[],{"title":6106,"description":6423},"0.snt-2nde\u002Fsh-prog-notions\u002F4.fonctions.memo","Dn300j-HVj8pMWvIHwBEhirv5mfhoDF5WuaOJ8052lo",{"id":6431,"title":6432,"bo":6433,"body":6434,"description":7035,"eval":1482,"extension":1483,"labo":1482,"meta":7036,"navigation":1489,"path":7038,"quizzes":7039,"readingTime":649,"seo":7078,"stem":7079,"tp":1482,"__hash__":7080},"coursMemo\u002F0.snt-2nde\u002Fsh-prog-notions\u002Fchapitre.memo.md","Notions de programmation — synthèse",[590,2526,3719,1499,589],{"type":592,"value":6435,"toc":7029},[6436,6440,6451,6474,6507,6542,6549,6553,6630,6634,6733,6737,6776,6803,6836,6870,6885,6906,6936,6980],[595,6437,6439],{"id":6438},"vue-densemble","Vue d'ensemble",[600,6441,6442,6443,6446,6447,6450],{},"Ce chapitre vous a fait franchir le ",[604,6444,6445],{},"premier seuil"," de la programmation :\nécrire des instructions, faire mémoriser des valeurs à la machine, lui faire\nprendre des décisions, lui faire répéter des actions, puis emballer le tout\ndans des fonctions réutilisables. Vous disposez maintenant des ",[604,6448,6449],{},"quatre\nbriques fondamentales"," qu'on retrouve dans tous les langages de\nprogrammation — Python compris, mais pas seulement.",[600,6452,6453,6454,6456,6457,6460,6461,6463,6464,6466,6467,6469,6470,6473],{},"La ",[604,6455,721],{}," est le pilier : Python lit votre programme\nligne par ligne et exécute chaque instruction dans l'ordre. C'est ce qu'on\nappelle le ",[604,6458,6459],{},"flot d'exécution",". Les ",[604,6462,621],{},", déclarées par une\naffectation (",[643,6465,5152],{},"), permettent au programme de retenir des valeurs\nau fil du temps. Comprendre que ",[643,6468,780],{}," n'est pas le « égal » mathématique mais\nun ordre de ",[604,6471,6472],{},"rangement"," est crucial — c'est de cette compréhension que\ndépend votre lecture correcte de tout programme.",[600,6475,6146,6476,1255,6478,1286,6480,1286,6482,6484,6485,6488,6489,6492,6493,6495,6496,6498,6499,6501,6502,6504,6505,833],{},[604,6477,4861],{},[643,6479,1523],{},[643,6481,1526],{},[643,6483,1530],{},") ajoutent la possibilité de\n",[604,6486,6487],{},"bifurquer"," : selon que telle expression est vraie ou fausse, le programme\nexécute tel ou tel bloc. Les ",[604,6490,6491],{},"boucles"," complètent l'arsenal en permettant\nde ",[604,6494,2539],{},". La distinction entre boucle bornée (",[643,6497,2554],{},", quand on connaît\nle nombre de tours à l'écriture) et boucle non bornée (",[643,6500,2562],{},", quand on\ncontinue tant qu'une condition reste vraie) est fondatrice. Une boucle\ninfinie est l'erreur classique du ",[643,6503,2562],{}," : la condition doit pouvoir\nbasculer à ",[643,6506,1554],{},[600,6508,6509,6510,6512,6513,6516,6517,6519,6520,6522,6523,6525,6526,6528,6529,6532,6533,1286,6536,2119,6539,833],{},"Enfin, les ",[604,6511,5005],{}," sont le premier outil de ",[604,6514,6515],{},"structuration"," du code.\nDéfinir une fonction avec ",[643,6518,3835],{},", c'est emballer un bout de programme nommé\nqu'on peut ",[604,6521,3765],{}," ailleurs. Les ",[604,6524,4032],{}," personnalisent son\ncomportement à chaque appel, et ",[643,6527,4231],{}," lui permet de ",[604,6530,6531],{},"rendre une valeur","\nutilisable dans la suite du code. C'est par les fonctions que les\nprogrammes deviennent ",[604,6534,6535],{},"lisibles",[604,6537,6538],{},"réutilisables",[604,6540,6541],{},"maintenables",[600,6543,6544,6545,6548],{},"L'ensemble de ces briques — séquence, variable, condition, boucle, fonction —\nconstitue ce qu'on appelle un ",[604,6546,6547],{},"noyau impératif",". Tous les langages que vous\nrencontrerez par la suite (Python en NSI, mais aussi JavaScript, C, etc.)\nreposent dessus. Maîtriser ces cinq notions est le ticket d'entrée vers tout\nle reste.",[595,6550,6552],{"id":6551},"carte-des-notions","Carte des notions",[1140,6554,6555,6568],{},[1143,6556,6557],{},[1146,6558,6559,6562,6565],{},[1149,6560,6561],{},"Cours",[1149,6563,6564],{},"Notions clés",[1149,6566,6567],{},"Item BO",[1159,6569,6570,6581,6597,6615],{},[1146,6571,6572,6575,6578],{},[1164,6573,6574],{},"1. Séquences et variables",[1164,6576,6577],{},"flot d'exécution, affectation, expression à droite",[1164,6579,6580],{},"SH05, SH01",[1146,6582,6583,6586,6595],{},[1164,6584,6585],{},"2. Conditionnelles",[1164,6587,6588,1286,6590,1286,6592,6594],{},[643,6589,1523],{},[643,6591,1526],{},[643,6593,1530],{},", opérateurs de comparaison",[1164,6596,1499],{},[1146,6598,6599,6602,6613],{},[1164,6600,6601],{},"3. Boucles",[1164,6603,6604,6606,6607,6609,6610,6612],{},[643,6605,2554],{}," + ",[643,6608,2592],{}," (bornée), ",[643,6611,2562],{}," (non bornée), boucle infinie",[1164,6614,2526],{},[1146,6616,6617,6620,6628],{},[1164,6618,6619],{},"4. Fonctions",[1164,6621,6622,6624,6625,6627],{},[643,6623,3835],{},", paramètres, arguments, ",[643,6626,4231],{},", appels",[1164,6629,3719],{},[595,6631,6633],{"id":6632},"récap-syntaxe-python","Récap syntaxe Python",[1140,6635,6636,6646],{},[1143,6637,6638],{},[1146,6639,6640,6643],{},[1149,6641,6642],{},"Concept",[1149,6644,6645],{},"Syntaxe minimale",[1159,6647,6648,6656,6665,6675,6685,6695,6705,6715,6725],{},[1146,6649,6650,6652],{},[1164,6651,1151],{},[1164,6653,6654],{},[643,6655,869],{},[1146,6657,6658,6661],{},[1164,6659,6660],{},"Affichage",[1164,6662,6663],{},[643,6664,5242],{},[1146,6666,6667,6670],{},[1164,6668,6669],{},"Condition",[1164,6671,6672],{},[643,6673,6674],{},"if x > 0: …",[1146,6676,6677,6680],{},[1164,6678,6679],{},"Branche alternative",[1164,6681,6682],{},[643,6683,6684],{},"else: …",[1146,6686,6687,6690],{},[1164,6688,6689],{},"Plusieurs cas",[1164,6691,6692],{},[643,6693,6694],{},"elif x == 0: …",[1146,6696,6697,6700],{},[1164,6698,6699],{},"Boucle bornée",[1164,6701,6702],{},[643,6703,6704],{},"for i in range(5): …",[1146,6706,6707,6710],{},[1164,6708,6709],{},"Boucle non bornée",[1164,6711,6712],{},[643,6713,6714],{},"while n \u003C 100: …",[1146,6716,6717,6720],{},[1164,6718,6719],{},"Définir une fonction",[1164,6721,6722],{},[643,6723,6724],{},"def carre(n): return n * n",[1146,6726,6727,6729],{},[1164,6728,3817],{},[1164,6730,6731],{},[643,6732,4370],{},[595,6734,6736],{"id":6735},"auto-évaluation","Auto-évaluation",[734,6738,6740,6751],{"correct":736,"slug":6739},"sh-prog-notions-1-q1",[740,6741,6742],{"v-slot:question":641},[600,6743,6744,6745,5232,6747,6750],{},"Que signifie le signe ",[643,6746,780],{},[643,6748,6749],{},"score = 10"," en Python ?",[740,6752,6753],{"v-slot:choices":641},[748,6754,6755,6762,6770,6773],{},[751,6756,6757,6758,2119,6760,833],{},"C'est une comparaison logique entre ",[643,6759,1074],{},[643,6761,2326],{},[751,6763,6764,6765,6767,6768,833],{},"C'est une affectation : la valeur ",[643,6766,2326],{}," est rangée dans la variable ",[643,6769,1074],{},[751,6771,6772],{},"C'est une équation à résoudre.",[751,6774,6775],{},"C'est un test de vérité.",[734,6777,6779,6787],{"correct":2152,"slug":6778},"sh-prog-notions-1-q2",[740,6780,6781],{"v-slot:question":641},[600,6782,6783,6784,6786],{},"Combien de valeurs ",[643,6785,2653],{}," produit-il, et lesquelles ?",[740,6788,6789],{"v-slot:choices":641},[748,6790,6791,6794,6797,6800],{},[751,6792,6793],{},"5 valeurs : 1, 2, 3, 4, 5",[751,6795,6796],{},"4 valeurs : 0, 1, 2, 3",[751,6798,6799],{},"5 valeurs : 0, 1, 2, 3, 4",[751,6801,6802],{},"6 valeurs : 0, 1, 2, 3, 4, 5",[734,6804,6806,6815],{"correct":2152,"slug":6805},"sh-prog-notions-1-q3",[740,6807,6808],{"v-slot:question":641},[600,6809,6810,6811,6814],{},"Quel mot-clé utilise-t-on pour faire ",[604,6812,6813],{},"renvoyer"," une valeur à une fonction ?",[740,6816,6817],{"v-slot:choices":641},[748,6818,6819,6823,6827,6831],{},[751,6820,6821],{},[643,6822,653],{},[751,6824,6825],{},[643,6826,3835],{},[751,6828,6829],{},[643,6830,4231],{},[751,6832,6833],{},[643,6834,6835],{},"yield",[734,6837,6840,6854],{"correct":6838,"slug":6839},"0,2","sh-prog-notions-1-q4",[740,6841,6842],{"v-slot:question":641},[600,6843,6844,6845,3992,6848,6850,6851,6853],{},"Parmi les situations suivantes, lesquelles relèvent d'une boucle ",[604,6846,6847],{},"non bornée",[643,6849,2562],{},") plutôt qu'une boucle bornée (",[643,6852,2554],{},") ?\n(plusieurs réponses)",[740,6855,6856],{"v-slot:choices":641},[748,6857,6858,6861,6864,6867],{},[751,6859,6860],{},"Demander un mot de passe jusqu'à ce qu'il soit correct.",[751,6862,6863],{},"Afficher les nombres de 1 à 50.",[751,6865,6866],{},"Continuer un jeu tant que le joueur a des points de vie.",[751,6868,6869],{},"Parcourir chaque lettre du mot « programmation ».",[6871,6872,6875],"self-eval-free-text",{"answer":1526,"slug":6873,"case-sensitive":6874},"sh-prog-notions-1-q5","false",[740,6876,6877],{"v-slot:question":641},[600,6878,6879,6880,6882,6883,2961],{},"Quel mot-clé Python sert à tester une condition supplémentaire entre ",[643,6881,1523],{},"\net ",[643,6884,1530],{},[6871,6886,6889],{"answer":1122,"slug":6887,"tolerance":1459,"type":6888},"sh-prog-notions-1-q6","number",[740,6890,6891],{"v-slot:question":641},[600,6892,6893,6894,6896,6897,6900,6903],{},"Après ces trois lignes, que vaut ",[643,6895,4513],{}," ?\n",[643,6898,6899],{},"x = 3",[643,6901,6902],{},"x = x + 1",[643,6904,6905],{},"x = x * 2",[734,6907,6909,6917],{"correct":736,"slug":6908},"sh-prog-notions-1-q7",[740,6910,6911],{"v-slot:question":641},[600,6912,6913,6914,6750],{},"Quelle valeur renvoie l'expression ",[643,6915,6916],{},"5 > 10",[740,6918,6919],{"v-slot:choices":641},[748,6920,6921,6925,6929,6933],{},[751,6922,6923],{},[643,6924,1550],{},[751,6926,6927],{},[643,6928,1554],{},[751,6930,6931],{},[643,6932,1459],{},[751,6934,6935],{},"une erreur de syntaxe",[6937,6938,6940,6954],"self-eval-ordering",{"slug":6939},"sh-prog-notions-1-q8",[740,6941,6942],{"v-slot:question":641},[600,6943,6944,6945,6948,6949,2119,6951,6953],{},"Ordonnez les étapes que Python exécute quand il rencontre ",[643,6946,6947],{},"total = a + b * 2","\n(en supposant ",[643,6950,1285],{},[643,6952,5231],{}," déjà définis) :",[740,6955,6956],{"v-slot:items":641},[748,6957,6958,6963,6969,6975],{},[751,6959,6960,6961],{},"Récupérer la valeur de ",[643,6962,5231],{},[751,6964,6965,6966],{},"Calculer ",[643,6967,6968],{},"b * 2",[751,6970,6971,6972,6974],{},"Ajouter la valeur de ",[643,6973,1285],{}," au résultat",[751,6976,6977,6978],{},"Ranger la somme finale dans ",[643,6979,5235],{},[6937,6981,6983,6988],{"slug":6982},"sh-prog-notions-1-q9",[740,6984,6985],{"v-slot:question":641},[600,6986,6987],{},"Ordonnez ces étapes de la définition et de l'utilisation d'une fonction :",[740,6989,6990],{"v-slot:items":641},[748,6991,6992,7001,7004,7011,7020],{},[751,6993,6994,6995,6997,6998],{},"Écrire ",[643,6996,4910],{}," puis le corps indenté avec ",[643,6999,7000],{},"return n * n",[751,7002,7003],{},"Lire le fichier de haut en bas, mémoriser la définition",[751,7005,7006,7007,7010],{},"Écrire plus loin ",[643,7008,7009],{},"resultat = carre(7)",", ce qui déclenche un appel",[751,7012,7013,7014,7016,7017,7019],{},"Pendant l'appel, ",[643,7015,1293],{}," vaut ",[643,7018,1119],{}," dans le corps de la fonction",[751,7021,7022,7023,7025,7026],{},"La fonction renvoie ",[643,7024,4546],{},", rangé dans ",[643,7027,7028],{},"resultat",{"title":641,"searchDepth":667,"depth":667,"links":7030},[7031,7032,7033,7034],{"id":6438,"depth":667,"text":6439},{"id":6551,"depth":667,"text":6552},{"id":6632,"depth":667,"text":6633},{"id":6735,"depth":667,"text":6736},"Vue d'ensemble du chapitre SH, points-clés des quatre cours et auto-évaluation finale.",{"self_eval_slug":7037},"snt-2nde-sh-prog-notions","\u002Fsnt-2nde\u002Fsh-prog-notions\u002Fchapitre.memo",[7040,7045,7048,7051,7054,7059,7061,7064,7072],{"slug":6739,"kind":1487,"question":7041,"choices":7042,"correct":736,"multi":1489,"explanation":641},"Que signifie le signe = dans score = 10 en Python ?",[7043,7044,6772,6775],"C'est une comparaison logique entre score et 10.","C'est une affectation : la valeur 10 est rangée dans la variable score.",{"slug":6778,"kind":1487,"question":7046,"choices":7047,"correct":2152,"multi":1489,"explanation":641},"Combien de valeurs range(5) produit-il, et lesquelles ?",[6793,6796,6799,6802],{"slug":6805,"kind":1487,"question":7049,"choices":7050,"correct":2152,"multi":1489,"explanation":641},"Quel mot-clé utilise-t-on pour faire renvoyer une valeur à une fonction ?",[653,3835,4231,6835],{"slug":6839,"kind":1487,"question":7052,"choices":7053,"correct":6838,"multi":993,"explanation":641},"Parmi les situations suivantes, lesquelles relèvent d'une boucle non bornée\n(while) plutôt qu'une boucle bornée (for) ?\n(plusieurs réponses)",[6860,6863,6866,6869],{"slug":6873,"kind":7055,"question":7056,"answer":1526,"caseSensitive":1489,"tolerance":7057,"inputType":7058,"explanation":641},"free_text","Quel mot-clé Python sert à tester une condition supplémentaire entre if\net else ?",0,"string",{"slug":6887,"kind":7055,"question":7060,"answer":1122,"caseSensitive":1489,"tolerance":7057,"inputType":6888,"explanation":641},"Après ces trois lignes, que vaut x ?\nx = 3x = x + 1x = x * 2",{"slug":6908,"kind":1487,"question":7062,"choices":7063,"correct":736,"multi":1489,"explanation":641},"Quelle valeur renvoie l'expression 5 > 10 en Python ?",[1550,1554,1459,6935],{"slug":6939,"kind":7065,"question":7066,"items":7067,"explanation":641},"ordering","Ordonnez les étapes que Python exécute quand il rencontre total = a + b * 2\n(en supposant a et b déjà définis) :",[7068,7069,7070,7071],"Récupérer la valeur de b","Calculer b * 2","Ajouter la valeur de a au résultat","Ranger la somme finale dans total",{"slug":6982,"kind":7065,"question":6987,"items":7073,"explanation":641},[7074,7003,7075,7076,7077],"Écrire def carre(n): puis le corps indenté avec return n * n","Écrire plus loin resultat = carre(7), ce qui déclenche un appel","Pendant l'appel, n vaut 7 dans le corps de la fonction","La fonction renvoie 49, rangé dans resultat",{"title":6432,"description":7035},"0.snt-2nde\u002Fsh-prog-notions\u002Fchapitre.memo","wdiTmd-cpjzJ9b0oX9fTtHM4zSj_xwL-dA6-E_nnWlw",1788035577566]