{"id":1642,"date":"2026-09-08T08:07:49","date_gmt":"2026-09-08T08:07:49","guid":{"rendered":"https:\/\/maroczain.com\/scolaire.maroczain.com\/?page_id=1642"},"modified":"2026-09-08T08:07:49","modified_gmt":"2026-09-08T08:07:49","slug":"cnc-informatique-mza-prepa-excellence","status":"publish","type":"page","link":"https:\/\/maroczain.com\/scolaire.maroczain.com\/cnc-informatique-mza-prepa-excellence\/","title":{"rendered":"CNC Informatique \u2014 MZA Pr\u00e9pa Excellence."},"content":{"rendered":"\n&#8220;`html\n<div id=\"mza-cnc-informatique\">\n\n<style>\n#mza-cnc-informatique,#mza-cnc-informatique *{box-sizing:border-box}\n#mza-cnc-informatique{\n --navy:#06172c;--blue:#0d416d;--gold:#c99a36;--gold2:#efd68c;\n --paper:#f5f6f8;--text:#18283a;--muted:#687789;--line:#dfe5eb;\n font-family:Arial,Helvetica,sans-serif;background:var(--paper);color:var(--text)\n}\n#mza-cnc-informatique a{text-decoration:none;color:inherit}\n#mza-cnc-informatique .wrap{max-width:1200px;margin:auto;padding:0 24px}\n#mza-cnc-informatique section{padding:68px 0}\n#mza-cnc-informatique .hero{\n padding:76px 0;color:#fff;\n background:\n radial-gradient(circle at 84% 12%,rgba(239,214,140,.24),transparent 28%),\n linear-gradient(135deg,#041224,#082b4c 68%,#10517e)\n}\n#mza-cnc-informatique .badge{\n display:inline-block;padding:8px 13px;border-radius:999px;\n border:1px solid rgba(239,214,140,.4);color:var(--gold2);\n font-size:11px;font-weight:900;letter-spacing:1.3px\n}\n#mza-cnc-informatique h1{\n font:500 clamp(44px,7vw,76px)\/1 Georgia,serif;margin:18px 0;color:#fff\n}\n#mza-cnc-informatique .lead{max-width:900px;color:#d7e1ea;font-size:18px;line-height:1.75}\n#mza-cnc-informatique .actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}\n#mza-cnc-informatique .btn{\n min-height:47px;padding:0 18px;border:0;border-radius:10px;\n display:inline-flex;align-items:center;justify-content:center;\n cursor:pointer;font-size:12px;font-weight:900\n}\n#mza-cnc-informatique .gold{background:linear-gradient(135deg,#bd892b,#efd483);color:#142238}\n#mza-cnc-informatique .glass{\n background:rgba(255,255,255,.08);\n border:1px solid rgba(255,255,255,.18);color:#fff\n}\n#mza-cnc-informatique .head{max-width:900px;margin-bottom:32px}\n#mza-cnc-informatique .kicker{color:#987023;font-size:11px;font-weight:900;letter-spacing:1.3px}\n#mza-cnc-informatique h2{\n color:var(--navy);font:500 clamp(31px,4vw,48px)\/1.1 Georgia,serif;\n margin:8px 0 10px\n}\n#mza-cnc-informatique .head p{color:var(--muted);line-height:1.7}\n#mza-cnc-informatique .grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}\n#mza-cnc-informatique .grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}\n#mza-cnc-informatique .card{\n background:#fff;border:1px solid var(--line);border-radius:19px;padding:23px\n}\n#mza-cnc-informatique .card h3{color:var(--navy);margin:0 0 10px}\n#mza-cnc-informatique .card p,#mza-cnc-informatique .card li{color:var(--muted);line-height:1.7}\n#mza-cnc-informatique .code{\n margin:14px 0;padding:16px;border-radius:12px;\n background:#071a2e;color:#d9e8f3;font-family:Consolas,monospace;\n white-space:pre-wrap;overflow:auto;line-height:1.6\n}\n#mza-cnc-informatique .dark{background:var(--navy);color:#fff}\n#mza-cnc-informatique .dark h2{color:#fff}\n#mza-cnc-informatique .dark .head p{color:#cbd7e0}\n#mza-cnc-informatique .process{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}\n#mza-cnc-informatique .process div{\n padding:20px 10px;text-align:center;border-radius:14px;\n background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1)\n}\n#mza-cnc-informatique .process b{display:block;color:var(--gold2);font-size:23px;margin-bottom:7px}\n#mza-cnc-informatique .process span{font-size:10px;font-weight:900}\n#mza-cnc-informatique .exercise{\n background:#fff;border:1px solid var(--line);border-radius:18px;\n padding:22px;margin-bottom:15px\n}\n#mza-cnc-informatique .level{\n display:inline-block;padding:6px 9px;margin-bottom:10px;border-radius:999px;\n background:#f1eee5;color:#7b5b1d;font-size:10px;font-weight:900\n}\n#mza-cnc-informatique .exercise h3{color:var(--navy);margin:0 0 10px}\n#mza-cnc-informatique .exercise p,#mza-cnc-informatique .exercise li{color:var(--muted);line-height:1.7}\n#mza-cnc-informatique .hint{\n display:none;margin-top:13px;padding:15px;border-radius:12px;\n background:#eef3f7;color:#425469;line-height:1.65\n}\n#mza-cnc-informatique .timer{\n background:#fff;border:1px solid var(--line);border-radius:22px;\n padding:28px;text-align:center\n}\n#mza-cnc-informatique .timerDisplay{\n font:600 52px\/1 Georgia,serif;color:var(--navy);margin:20px 0\n}\n#mza-cnc-informatique .qcm{\n background:#fff;border:1px solid var(--line);border-radius:23px;padding:28px\n}\n#mza-cnc-informatique .question{\n padding:20px;margin:15px 0;background:#f7f8fa;border-radius:14px\n}\n#mza-cnc-informatique .question strong{display:block;color:var(--navy);margin-bottom:12px}\n#mza-cnc-informatique label{display:block;padding:8px 0;color:#526174;cursor:pointer}\n#mza-cnc-informatique #cncInfoResult{\n display:none;margin-top:18px;padding:20px;border-radius:14px;\n background:var(--navy);color:#fff\n}\n#mza-cnc-informatique .cta{\n text-align:center;padding:50px 24px;border-radius:25px;\n background:linear-gradient(135deg,#06172c,#0d416d);color:#fff\n}\n#mza-cnc-informatique .cta h2{color:#fff}\n#mza-cnc-informatique .cta p{\n max-width:780px;margin:0 auto 22px;color:#cfdae4;line-height:1.7\n}\n\n@media(max-width:900px){\n #mza-cnc-informatique .grid,#mza-cnc-informatique .grid3,\n #mza-cnc-informatique .process{grid-template-columns:1fr}\n}\n<\/style>\n\n<header class=\"hero\">\n<div class=\"wrap\">\n\n<span class=\"badge\">MZA PR\u00c9PA EXCELLENCE \u2022 CNC INFORMATIQUE<\/span>\n\n<h1>Informatique<br>CNC<\/h1>\n\n<p class=\"lead\">\nAlgorithmique, Python, structures de donn\u00e9es, r\u00e9cursivit\u00e9, complexit\u00e9,\ngraphes, logique, bases de donn\u00e9es et strat\u00e9gie de r\u00e9solution :\nun espace con\u00e7u pour raisonner vite et produire des algorithmes corrects.\n<\/p>\n\n<div class=\"actions\">\n<a href=\"#programme\" class=\"btn gold\">\ud83d\udcda PROGRAMME<\/a>\n<a href=\"#problems\" class=\"btn glass\">\ud83d\udcbb CODE LAB<\/a>\n<a href=\"#speed\" class=\"btn glass\">\u23f1 SPEED LAB<\/a>\n<a href=\"#blanc\" class=\"btn glass\">\ud83c\udfc6 CONCOURS BLANC<\/a>\n<a href=\"#diagnostic\" class=\"btn glass\">\u2753 DIAGNOSTIC<\/a>\n<\/div>\n\n<\/div>\n<\/header>\n\n<section id=\"programme\">\n<div class=\"wrap\">\n\n<div class=\"head\">\n<span class=\"kicker\">CNC INFORMATIQUE MASTER MAP<\/span>\n<h2>Les blocs essentiels.<\/h2>\n<\/div>\n\n<div class=\"grid3\">\n\n<div class=\"card\">\n<h3>01 \u2022 Algorithmique<\/h3>\n<p>Variables, conditions, boucles, fonctions et invariants.<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>02 \u2022 Python<\/h3>\n<p>Listes, tuples, dictionnaires, fonctions et traitement de donn\u00e9es.<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>03 \u2022 Complexit\u00e9<\/h3>\n<p>Temps, m\u00e9moire, ordre de grandeur et notation O.<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>04 \u2022 R\u00e9cursivit\u00e9<\/h3>\n<p>Cas de base, appels r\u00e9cursifs, terminaison et co\u00fbt.<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>05 \u2022 Structures de donn\u00e9es<\/h3>\n<p>Piles, files, tableaux, listes et ensembles.<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>06 \u2022 Recherche &#038; tri<\/h3>\n<p>Recherche dichotomique, insertion, s\u00e9lection et fusion.<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>07 \u2022 Graphes<\/h3>\n<p>Sommets, ar\u00eates, parcours, connexit\u00e9 et plus courts chemins.<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>08 \u2022 Bases de donn\u00e9es<\/h3>\n<p>Tables, cl\u00e9s, SQL, s\u00e9lection, jointures et agr\u00e9gation.<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>09 \u2022 Strat\u00e9gie CNC<\/h3>\n<p>Compr\u00e9hension du probl\u00e8me, preuve de correction et tests.<\/p>\n<\/div>\n\n<\/div>\n<\/div>\n<\/section>\n\n<section class=\"dark\">\n<div class=\"wrap\">\n\n<div class=\"head\">\n<span class=\"kicker\" style=\"color:#efd68c\">MZA CNC CODE ENGINE<\/span>\n<h2>Six r\u00e9flexes avant d&#8217;\u00e9crire du code.<\/h2>\n<\/div>\n\n<div class=\"process\">\n<div><b>01<\/b><span>ENTR\u00c9ES<\/span><\/div>\n<div><b>02<\/b><span>SORTIES<\/span><\/div>\n<div><b>03<\/b><span>MOD\u00c8LE<\/span><\/div>\n<div><b>04<\/b><span>ALGORITHME<\/span><\/div>\n<div><b>05<\/b><span>COMPLEXIT\u00c9<\/span><\/div>\n<div><b>06<\/b><span>TESTS<\/span><\/div>\n<\/div>\n\n<\/div>\n<\/section>\n\n<section>\n<div class=\"wrap\">\n\n<div class=\"head\">\n<span class=\"kicker\">M\u00c9THODE<\/span>\n<h2>Ne pas coder avant de savoir ce que l&#8217;algorithme doit garantir.<\/h2>\n<\/div>\n\n<div class=\"grid\">\n\n<div class=\"card\">\n<h3>Sp\u00e9cification<\/h3>\n<p>Quelles sont les donn\u00e9es d&#8217;entr\u00e9e et la sortie attendue ?<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>Invariant<\/h3>\n<p>Quelle propri\u00e9t\u00e9 doit rester vraie pendant l&#8217;ex\u00e9cution ?<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>Terminaison<\/h3>\n<p>Pourquoi l&#8217;algorithme finit-il ?<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>Complexit\u00e9<\/h3>\n<p>Combien d&#8217;op\u00e9rations et quelle m\u00e9moire suppl\u00e9mentaire ?<\/p>\n<\/div>\n\n<\/div>\n<\/div>\n<\/section>\n\n<section id=\"problems\" style=\"background:#efede7\">\n<div class=\"wrap\">\n\n<div class=\"head\">\n<span class=\"kicker\">CODE LAB<\/span>\n<h2>Probl\u00e8mes type CNC Informatique.<\/h2>\n<\/div>\n\n<div class=\"exercise\">\n<span class=\"level\">ALGORITHMIQUE<\/span>\n<h3>Mission 1 \u2014 Maximum d&#8217;une liste<\/h3>\n\n<p>\n\u00c9crire un algorithme qui d\u00e9termine le maximum d&#8217;une liste non vide.\n<\/p>\n\n<div class=\"code\">def maximum(L):\n    m = L[0]\n    &#8230;\n    return m<\/div>\n\n<ol>\n<li>compl\u00e9ter l&#8217;algorithme ;<\/li>\n<li>identifier un invariant de boucle ;<\/li>\n<li>justifier la correction ;<\/li>\n<li>d\u00e9terminer la complexit\u00e9 temporelle ;<\/li>\n<li>d\u00e9terminer la complexit\u00e9 m\u00e9moire.<\/li>\n<\/ol>\n\n<button type=\"button\" class=\"btn gold\" onclick=\"mzaCncInfoHint('i1')\">\ud83d\udca1 INDICE<\/button>\n<div id=\"i1\" class=\"hint\">\nApr\u00e8s avoir trait\u00e9 les k premiers \u00e9l\u00e9ments, m doit \u00eatre le maximum de cette portion de liste.\n<\/div>\n<\/div>\n\n<div class=\"exercise\">\n<span class=\"level\">RECHERCHE<\/span>\n<h3>Mission 2 \u2014 Recherche dichotomique<\/h3>\n\n<p>\nOn recherche une valeur x dans une liste tri\u00e9e.\n<\/p>\n\n<ol>\n<li>d\u00e9crire l&#8217;intervalle de recherche ;<\/li>\n<li>choisir l&#8217;indice m\u00e9dian ;<\/li>\n<li>r\u00e9duire l&#8217;intervalle ;<\/li>\n<li>justifier la terminaison ;<\/li>\n<li>d\u00e9terminer la complexit\u00e9.<\/li>\n<\/ol>\n\n<button type=\"button\" class=\"btn gold\" onclick=\"mzaCncInfoHint('i2')\">\ud83d\udca1 INDICE<\/button>\n<div id=\"i2\" class=\"hint\">\n\u00c0 chaque \u00e9tape, la taille de la zone de recherche est approximativement divis\u00e9e par deux.\n<\/div>\n<\/div>\n\n<div class=\"exercise\">\n<span class=\"level\">GRAPHES<\/span>\n<h3>Mission 3 \u2014 Parcours d&#8217;un graphe<\/h3>\n\n<p>\nOn repr\u00e9sente un r\u00e9seau par un graphe non orient\u00e9.\n<\/p>\n\n<ol>\n<li>choisir une repr\u00e9sentation adapt\u00e9e ;<\/li>\n<li>parcourir les sommets accessibles depuis une source ;<\/li>\n<li>\u00e9viter les visites multiples ;<\/li>\n<li>tester la connexit\u00e9 ;<\/li>\n<li>discuter la complexit\u00e9 du parcours.<\/li>\n<\/ol>\n\n<button type=\"button\" class=\"btn gold\" onclick=\"mzaCncInfoHint('i3')\">\ud83d\udca1 INDICE<\/button>\n<div id=\"i3\" class=\"hint\">\nUtilisez un ensemble de sommets d\u00e9j\u00e0 visit\u00e9s et une pile ou une file selon le parcours choisi.\n<\/div>\n<\/div>\n\n<\/div>\n<\/section>\n\n<section id=\"speed\" class=\"dark\">\n<div class=\"wrap\">\n\n<div class=\"head\">\n<span class=\"kicker\" style=\"color:#efd68c\">SPEED LAB<\/span>\n<h2>10 minutes \u2014 6 r\u00e9flexes informatiques.<\/h2>\n<\/div>\n\n<div class=\"timer\">\n<div style=\"font-size:11px;font-weight:900;color:#987023\">TEMPS RESTANT<\/div>\n<div id=\"cncInfoTimer\" class=\"timerDisplay\">10:00<\/div>\n\n<div class=\"actions\" style=\"justify-content:center\">\n<button type=\"button\" class=\"btn gold\" onclick=\"mzaStartCncInfoTimer()\">\u25b6 D\u00c9MARRER<\/button>\n<button type=\"button\" class=\"btn\" style=\"background:#06172c;color:#fff\" onclick=\"mzaResetCncInfoTimer()\">\u21bb RESET<\/button>\n<\/div>\n<\/div>\n\n<div style=\"height:20px\"><\/div>\n\n<div class=\"grid3\">\n\n<div class=\"card\">\n<h3>01<\/h3>\n<p>Une boucle parcourt n \u00e9l\u00e9ments une seule fois : complexit\u00e9 typique ?<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>02<\/h3>\n<p>Une recherche dichotomique divise le probl\u00e8me par deux : ordre de complexit\u00e9 ?<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>03<\/h3>\n<p>Une fonction r\u00e9cursive sans cas de base pr\u00e9sente quel risque ?<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>04<\/h3>\n<p>Quel parcours utilise naturellement une file : profondeur ou largeur ?<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>05<\/h3>\n<p>Une cl\u00e9 primaire sert principalement \u00e0 quoi ?<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>06<\/h3>\n<p>Un algorithme passe tous les exemples donn\u00e9s : est-il forc\u00e9ment correct ?<\/p>\n<\/div>\n\n<\/div>\n<\/div>\n<\/section>\n\n<section>\n<div class=\"wrap\">\n\n<div class=\"head\">\n<span class=\"kicker\">COMPLEXIT\u00c9<\/span>\n<h2>Reconna\u00eetre imm\u00e9diatement les grands ordres.<\/h2>\n<\/div>\n\n<div class=\"grid\">\n\n<div class=\"card\">\n<h3>O(1)<\/h3>\n<p>Temps ind\u00e9pendant de la taille de l&#8217;entr\u00e9e.<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>O(log n)<\/h3>\n<p>R\u00e9duction multiplicative du probl\u00e8me, comme la recherche dichotomique.<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>O(n)<\/h3>\n<p>Parcours simple d&#8217;une structure de taille n.<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>O(n\u00b2)<\/h3>\n<p>Deux boucles imbriqu\u00e9es parcourant n \u00e9l\u00e9ments dans le cas typique.<\/p>\n<\/div>\n\n<\/div>\n<\/div>\n<\/section>\n\n<section id=\"blanc\" style=\"background:#efede7\">\n<div class=\"wrap\">\n\n<div class=\"head\">\n<span class=\"kicker\">CONCOURS BLANC 01<\/span>\n<h2>Gestion intelligente d&#8217;un r\u00e9seau de transport.<\/h2>\n<\/div>\n\n<div class=\"card\">\n\n<h3>Partie A \u2014 Donn\u00e9es<\/h3>\n<ol>\n<li>mod\u00e9liser les stations et connexions ;<\/li>\n<li>choisir une structure de donn\u00e9es ;<\/li>\n<li>charger un r\u00e9seau simple ;<\/li>\n<li>tester l&#8217;existence d&#8217;une station ;<\/li>\n<li>calculer son nombre de voisins.<\/li>\n<\/ol>\n\n<h3>Partie B \u2014 Parcours<\/h3>\n<ol>\n<li>\u00e9crire un parcours en largeur ;<\/li>\n<li>maintenir l&#8217;ensemble des sommets visit\u00e9s ;<\/li>\n<li>calculer les distances en nombre d&#8217;ar\u00eates ;<\/li>\n<li>tester la connexit\u00e9 ;<\/li>\n<li>analyser la complexit\u00e9.<\/li>\n<\/ol>\n\n<h3>Partie C \u2014 Optimisation<\/h3>\n<ol>\n<li>identifier les chemins possibles ;<\/li>\n<li>d\u00e9finir une fonction de co\u00fbt ;<\/li>\n<li>proposer un algorithme adapt\u00e9 ;<\/li>\n<li>justifier son choix ;<\/li>\n<li>discuter les limites du mod\u00e8le.<\/li>\n<\/ol>\n\n<h3>Partie D \u2014 Base de donn\u00e9es<\/h3>\n<ol>\n<li>d\u00e9finir les tables Station et Liaison ;<\/li>\n<li>choisir les cl\u00e9s ;<\/li>\n<li>\u00e9crire une requ\u00eate de s\u00e9lection ;<\/li>\n<li>\u00e9crire une jointure ;<\/li>\n<li>produire une agr\u00e9gation par station.<\/li>\n<\/ol>\n\n<div class=\"actions\">\n<button type=\"button\" class=\"btn gold\" onclick=\"mzaCncInfoHint('ib1')\">\ud83c\udfaf STRAT\u00c9GIE<\/button>\n<button type=\"button\" class=\"btn\" style=\"background:#06172c;color:#fff\" onclick=\"mzaCncInfoHint('ib2')\">\ud83e\udde0 PLAN D&#8217;ATTAQUE<\/button>\n<\/div>\n\n<div id=\"ib1\" class=\"hint\">\nS\u00e9parez toujours repr\u00e9sentation des donn\u00e9es, algorithme, preuve et analyse de complexit\u00e9.\n<\/div>\n\n<div id=\"ib2\" class=\"hint\">\nTraitez d&#8217;abord les fonctions \u00e9l\u00e9mentaires, puis r\u00e9utilisez-les pour construire les traitements plus complexes.\n<\/div>\n\n<\/div>\n<\/div>\n<\/section>\n\n<section>\n<div class=\"wrap\">\n\n<div class=\"head\">\n<span class=\"kicker\">ERROR DNA<\/span>\n<h2>Les erreurs classiques en concours.<\/h2>\n<\/div>\n\n<div class=\"grid\">\n\n<div class=\"card\">\n<h3>Indice hors limites<\/h3>\n<p>Confusion entre longueur n et dernier indice n-1.<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>Cas vide oubli\u00e9<\/h3>\n<p>Un algorithme \u00e9choue sur une entr\u00e9e particuli\u00e8re non test\u00e9e.<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>R\u00e9cursion infinie<\/h3>\n<p>Cas de base absent ou probl\u00e8me qui ne diminue pas.<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>Mutation involontaire<\/h3>\n<p>Une structure pass\u00e9e en argument est modifi\u00e9e sans que cela soit voulu.<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>Complexit\u00e9 sous-estim\u00e9e<\/h3>\n<p>Une op\u00e9ration co\u00fbteuse est cach\u00e9e dans une boucle.<\/p>\n<\/div>\n\n<div class=\"card\">\n<h3>Tests insuffisants<\/h3>\n<p>Un exemple r\u00e9ussi ne constitue pas une preuve g\u00e9n\u00e9rale.<\/p>\n<\/div>\n\n<\/div>\n<\/div>\n<\/section>\n\n<section class=\"dark\">\n<div class=\"wrap\">\n\n<div class=\"head\">\n<span class=\"kicker\" style=\"color:#efd68c\">MZA CODE CHECK<\/span>\n<h2>Avant de valider un algorithme.<\/h2>\n<\/div>\n\n<div class=\"process\">\n<div><b>A<\/b><span>ENTR\u00c9E<\/span><\/div>\n<div><b>B<\/b><span>CAS LIMITES<\/span><\/div>\n<div><b>C<\/b><span>INVARIANT<\/span><\/div>\n<div><b>D<\/b><span>TERMINAISON<\/span><\/div>\n<div><b>E<\/b><span>COMPLEXIT\u00c9<\/span><\/div>\n<div><b>F<\/b><span>TESTS<\/span><\/div>\n<\/div>\n\n<\/div>\n<\/section>\n\n<section id=\"diagnostic\">\n<div class=\"wrap\">\n\n<div class=\"head\">\n<span class=\"kicker\">DIAGNOSTIC CNC INFORMATIQUE<\/span>\n<h2>Testez vos r\u00e9flexes algorithmiques.<\/h2>\n<p>Le score s&#8217;affiche sans correction d\u00e9taill\u00e9e.<\/p>\n<\/div>\n\n<div class=\"qcm\">\n<form id=\"cncInfoQuiz\">\n\n<div class=\"question\">\n<strong>1. Une boucle simple parcourant n \u00e9l\u00e9ments est typiquement :<\/strong>\n<label><input type=\"radio\" name=\"iq1\" value=\"1\"> O(n)<\/label>\n<label><input type=\"radio\" name=\"iq1\" value=\"0\"> O(1)<\/label>\n<label><input type=\"radio\" name=\"iq1\" value=\"0\"> O(n\u00b2) dans tous les cas<\/label>\n<label><input type=\"radio\" name=\"iq1\" value=\"0\"> O(2\u207f)<\/label>\n<\/div>\n\n<div class=\"question\">\n<strong>2. La recherche dichotomique n\u00e9cessite notamment :<\/strong>\n<label><input type=\"radio\" name=\"iq2\" value=\"1\"> une collection ordonn\u00e9e selon le crit\u00e8re de recherche<\/label>\n<label><input type=\"radio\" name=\"iq2\" value=\"0\"> une liste forc\u00e9ment al\u00e9atoire<\/label>\n<label><input type=\"radio\" name=\"iq2\" value=\"0\"> deux boucles imbriqu\u00e9es<\/label>\n<label><input type=\"radio\" name=\"iq2\" value=\"0\"> aucune comparaison<\/label>\n<\/div>\n\n<div class=\"question\">\n<strong>3. Une fonction r\u00e9cursive doit poss\u00e9der :<\/strong>\n<label><input type=\"radio\" name=\"iq3\" value=\"1\"> un cas de base permettant la terminaison<\/label>\n<label><input type=\"radio\" name=\"iq3\" value=\"0\"> uniquement un appel \u00e0 elle-m\u00eame<\/label>\n<label><input type=\"radio\" name=\"iq3\" value=\"0\"> toujours une boucle while<\/label>\n<label><input type=\"radio\" name=\"iq3\" value=\"0\"> toujours deux param\u00e8tres<\/label>\n<\/div>\n\n<div class=\"question\">\n<strong>4. Le parcours en largeur utilise naturellement :<\/strong>\n<label><input type=\"radio\" name=\"iq4\" value=\"1\"> une file<\/label>\n<label><input type=\"radio\" name=\"iq4\" value=\"0\"> uniquement une pile<\/label>\n<label><input type=\"radio\" name=\"iq4\" value=\"0\"> aucun stockage<\/label>\n<label><input type=\"radio\" name=\"iq4\" value=\"0\"> une base SQL obligatoire<\/label>\n<\/div>\n\n<div class=\"question\">\n<strong>5. Une cl\u00e9 primaire :<\/strong>\n<label><input type=\"radio\" name=\"iq5\" value=\"1\"> identifie de mani\u00e8re unique une ligne<\/label>\n<label><input type=\"radio\" name=\"iq5\" value=\"0\"> doit toujours contenir le nom d&#8217;une personne<\/label>\n<label><input type=\"radio\" name=\"iq5\" value=\"0\"> peut identifier plusieurs lignes sans distinction<\/label>\n<label><input type=\"radio\" name=\"iq5\" value=\"0\"> remplace toutes les autres colonnes<\/label>\n<\/div>\n\n<div class=\"question\">\n<strong>6. Un programme correct sur trois exemples :<\/strong>\n<label><input type=\"radio\" name=\"iq6\" value=\"1\"> n&#8217;est pas n\u00e9cessairement correct pour toutes les entr\u00e9es<\/label>\n<label><input type=\"radio\" name=\"iq6\" value=\"0\"> est automatiquement prouv\u00e9 correct<\/label>\n<label><input type=\"radio\" name=\"iq6\" value=\"0\"> poss\u00e8de forc\u00e9ment une complexit\u00e9 O(1)<\/label>\n<label><input type=\"radio\" name=\"iq6\" value=\"0\"> ne n\u00e9cessite aucun test suppl\u00e9mentaire<\/label>\n<\/div>\n\n<button type=\"button\" class=\"btn gold\" onclick=\"mzaCncInfoScore()\">\nVALIDER MON DIAGNOSTIC\n<\/button>\n\n<\/form>\n\n<div id=\"cncInfoResult\"><\/div>\n<\/div>\n\n<\/div>\n<\/section>\n\n<section>\n<div class=\"wrap\">\n\n<div class=\"cta\">\n\n<h2>CNC Informatique \u2014 Mode Concours<\/h2>\n\n<p>\nL&#8217;objectif est de transformer un probl\u00e8me en donn\u00e9es, algorithme, preuve,\ncomplexit\u00e9 et tests, avec une r\u00e9daction suffisamment claire pour \u00eatre \u00e9valu\u00e9e rapidement.\n<\/p>\n\n<div class=\"actions\" style=\"justify-content:center\">\n<a href=\"#problems\" class=\"btn gold\">\ud83d\udcbb CODE LAB<\/a>\n<a href=\"#speed\" class=\"btn glass\">\u23f1 SPEED LAB<\/a>\n<a href=\"#blanc\" class=\"btn glass\">\ud83c\udfc6 CONCOURS BLANC<\/a>\n<\/div>\n\n<\/div>\n<\/div>\n<\/section>\n\n<script>\nfunction mzaCncInfoHint(id){\n const el=document.getElementById(id);\n if(!el)return;\n el.style.display=el.style.display===\"block\" ? \"none\" : \"block\";\n}\n\nlet cncInfoSeconds=600;\nlet cncInfoInterval=null;\n\nfunction mzaRenderCncInfoTimer(){\n const el=document.getElementById(\"cncInfoTimer\");\n if(!el)return;\n const m=Math.floor(cncInfoSeconds\/60);\n const s=cncInfoSeconds%60;\n el.textContent=String(m).padStart(2,\"0\")+\":\"+String(s).padStart(2,\"0\");\n}\n\nfunction mzaStartCncInfoTimer(){\n if(cncInfoInterval)return;\n cncInfoInterval=setInterval(function(){\n   if(cncInfoSeconds>0){\n     cncInfoSeconds--;\n     mzaRenderCncInfoTimer();\n   }else{\n     clearInterval(cncInfoInterval);\n     cncInfoInterval=null;\n     const el=document.getElementById(\"cncInfoTimer\");\n     if(el)el.textContent=\"TERMIN\u00c9\";\n   }\n },1000);\n}\n\nfunction mzaResetCncInfoTimer(){\n clearInterval(cncInfoInterval);\n cncInfoInterval=null;\n cncInfoSeconds=600;\n mzaRenderCncInfoTimer();\n}\n\nfunction mzaCncInfoScore(){\n const form=document.getElementById(\"cncInfoQuiz\");\n const result=document.getElementById(\"cncInfoResult\");\n\n let score=0;\n let complete=true;\n\n [\"iq1\",\"iq2\",\"iq3\",\"iq4\",\"iq5\",\"iq6\"].forEach(function(name){\n   const answer=form.querySelector('input[name=\"'+name+'\"]:checked');\n   if(!answer){\n     complete=false;\n   }else{\n     score+=Number(answer.value);\n   }\n });\n\n result.style.display=\"block\";\n\n if(!complete){\n   result.innerHTML=\"<strong>R\u00e9pondez aux 6 questions avant de valider.<\/strong>\";\n   return;\n }\n\n const pct=Math.round(score\/6*100);\n\n let level=\"Pr\u00e9paration CNC Informatique \u00e0 renforcer\";\n if(pct>=50)level=\"Fondations algorithmiques acquises\";\n if(pct>=67)level=\"Bon niveau CNC Informatique\";\n if(pct>=84)level=\"Tr\u00e8s bon niveau CNC Informatique\";\n if(pct===100)level=\"Excellent profil algorithmique\";\n\n result.innerHTML=\n \"<strong style='font-size:30px;color:#efd68c'>\"+pct+\"%<\/strong>\"+\n \"<p><b>\"+level+\"<\/b><\/p>\"+\n \"<p>Score : \"+score+\" \/ 6<\/p>\"+\n \"<p>Les r\u00e9ponses correctes et la correction d\u00e9taill\u00e9e restent masqu\u00e9es.<\/p>\";\n}\n\nmzaRenderCncInfoTimer();\n<\/script>\n\n<\/div>\n&#8220;`\n","protected":false},"excerpt":{"rendered":"<p>&#8220;`html MZA PR\u00c9PA EXCELLENCE \u2022 CNC INFORMATIQUE InformatiqueCNC Algorithmique, Python, structures de donn\u00e9es, r\u00e9cursivit\u00e9, complexit\u00e9, graphes, logique, bases de donn\u00e9es et strat\u00e9gie de r\u00e9solution : un espace con\u00e7u pour raisonner vite et produire des algorithmes corrects. \ud83d\udcda PROGRAMME \ud83d\udcbb CODE LAB \u23f1 SPEED LAB \ud83c\udfc6 CONCOURS BLANC \u2753 DIAGNOSTIC CNC INFORMATIQUE MASTER MAP Les blocs [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-1642","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/maroczain.com\/scolaire.maroczain.com\/wp-json\/wp\/v2\/pages\/1642","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/maroczain.com\/scolaire.maroczain.com\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/maroczain.com\/scolaire.maroczain.com\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/maroczain.com\/scolaire.maroczain.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/maroczain.com\/scolaire.maroczain.com\/wp-json\/wp\/v2\/comments?post=1642"}],"version-history":[{"count":1,"href":"https:\/\/maroczain.com\/scolaire.maroczain.com\/wp-json\/wp\/v2\/pages\/1642\/revisions"}],"predecessor-version":[{"id":1644,"href":"https:\/\/maroczain.com\/scolaire.maroczain.com\/wp-json\/wp\/v2\/pages\/1642\/revisions\/1644"}],"wp:attachment":[{"href":"https:\/\/maroczain.com\/scolaire.maroczain.com\/wp-json\/wp\/v2\/media?parent=1642"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}