{"id":15283,"date":"2025-12-15T15:50:10","date_gmt":"2025-12-15T14:50:10","guid":{"rendered":"https:\/\/activities.myyaformation.com\/?post_type=dt_lessons&#038;p=15283"},"modified":"2025-12-15T15:50:13","modified_gmt":"2025-12-15T14:50:13","slug":"lecon-40-revision-generale-de-la-conjugaison","status":"publish","type":"dt_lessons","link":"https:\/\/activities.myyaformation.com\/en\/lessons\/lecon-40-revision-generale-de-la-conjugaison\/","title":{"rendered":"Lesson 40: General review of conjugation"},"content":{"rendered":"\n<!-- LE\u00c7ON 40 : R\u00e9vision g\u00e9n\u00e9rale de la conjugaison -->\n<div style=\"margin:0; padding:20px; background-color:#f0f7ff; font-family:Arial, sans-serif;\">\n    <div style=\"max-width:1000px; margin:20px auto; background-color:white; border-radius:15px; box-shadow:0 5px 15px rgba(0,0,100,0.1); padding:30px;\">\n        \n        <h1 style=\"color:#2c3e50; text-align:center; margin-top:0; padding-bottom:15px; border-bottom:2px solid #9b59b6; font-size:2rem;\">\n            Le\u00e7on 40 : R\u00e9vision g\u00e9n\u00e9rale de la conjugaison\n        <\/h1>\n        \n        <div style=\"background-color:#f4ecf7; padding:20px; border-radius:10px; border-left:5px solid #9b59b6; margin:20px 0;\">\n            <h2 style=\"color:#8e44ad; margin-top:0; font-size:1.4rem;\">Objectifs :<\/h2>\n            <div style=\"margin:10px 0;\">\n                <p style=\"margin:5px 0;\">\u2713 <strong>Ma\u00eetriser les temps simples et compos\u00e9s<\/strong><\/p>\n                <p style=\"margin:5px 0;\">\u2713 <strong>Produire une narration coh\u00e9rente<\/strong><\/p>\n                <p style=\"margin:5px 0;\">\u2713 <strong>S'exprimer avec nuance<\/strong><\/p>\n            <\/div>\n        <\/div>\n        \n        <h2 style=\"color:#8e44ad; margin-top:25px; font-size:1.4rem;\">Outils disponibles :<\/h2>\n        <div style=\"display:flex; flex-wrap:wrap; gap:15px; margin:20px 0;\">\n            <div style=\"flex:1; min-width:200px; background-color:#f4ecf7; padding:15px; border-radius:8px; border-left:4px solid #9b59b6; text-align:center;\">\n                <div style=\"font-size:2rem; color:#8e44ad; margin-bottom:10px;\">\ud83d\udcca<\/div>\n                <p style=\"margin:0; font-weight:bold;\">Tableaux<\/p>\n            <\/div>\n            <div style=\"flex:1; min-width:200px; background-color:#f4ecf7; padding:15px; border-radius:8px; border-left:4px solid #9b59b6; text-align:center;\">\n                <div style=\"font-size:2rem; color:#8e44ad; margin-bottom:10px;\">\u270d\ufe0f<\/div>\n                <p style=\"margin:0; font-weight:bold;\">Exercices<\/p>\n            <\/div>\n            <div style=\"flex:1; min-width:200px; background-color:#f4ecf7; padding:15px; border-radius:8px; border-left:4px solid #9b59b6; text-align:center;\">\n                <div style=\"font-size:2rem; color:#8e44ad; margin-bottom:10px;\">\ud83d\udcda<\/div>\n                <p style=\"margin:0; font-weight:bold;\">Lecture<\/p>\n            <\/div>\n            <div style=\"flex:1; min-width:200px; background-color:#f4ecf7; padding:15px; border-radius:8px; border-left:4px solid #9b59b6; text-align:center;\">\n                <div style=\"font-size:2rem; color:#8e44ad; margin-bottom:10px;\">\ud83d\udd8b\ufe0f<\/div>\n                <p style=\"margin:0; font-weight:bold;\">\u00c9criture<\/p>\n            <\/div>\n        <\/div>\n        \n        <div style=\"background-color:#e8f5e9; padding:25px; border-radius:10px; margin:25px 0;\">\n            <h2 style=\"color:#27ae60; margin-top:0; font-size:1.4rem;\">Exercice interactif : Transformations<\/h2>\n            \n            <div style=\"background-color:white; padding:20px; border-radius:8px; margin-bottom:20px;\">\n                <h3 style=\"color:#2c3e50; margin-top:0;\">Texte original :<\/h3>\n                <div style=\"background-color:#f8f9fa; padding:15px; border-radius:5px; border-left:3px solid #3498db;\">\n                    <p style=\"margin:0; font-style:italic;\">\n                        \"Le professeur explique la le\u00e7on aux \u00e9l\u00e8ves. Ils comprennent bien et posent des questions. \n                        Demain, ils feront un exercice pour pratiquer.\"\n                    <\/p>\n                <\/div>\n            <\/div>\n            \n            <div id=\"feedback40-1\" style=\"padding:10px; margin:10px 0; border-radius:5px; display:none;\"><\/div>\n            \n            <div style=\"margin-bottom:20px;\">\n                <p style=\"font-weight:bold; color:#27ae60; margin-bottom:15px;\">1. Transformer au pass\u00e9 (pass\u00e9 compos\u00e9 et imparfait) :<\/p>\n                <div style=\"background-color:#f8f9fa; padding:15px; border-radius:5px;\">\n                    <div id=\"response40-1\" style=\"min-height:40px; padding:10px; background-color:white; border:1px dashed #ccc; border-radius:3px; margin-bottom:10px;\"><\/div>\n                    <textarea id=\"input40-1\" style=\"width:100%; min-height:80px; padding:10px; border:2px solid #27ae60; border-radius:5px; font-family:Arial, sans-serif;\" \n                              placeholder=\"\u00c9crivez votre transformation ici...\"><\/textarea>\n                    <button style=\"padding:8px 20px; background-color:#27ae60; color:white; border:none; border-radius:5px; cursor:pointer; margin-top:10px;\" \n                            onclick=\"checkAnswer40(1)\">\n                        V\u00e9rifier ma r\u00e9ponse\n                    <\/button>\n                    <button style=\"padding:8px 20px; background-color:#3498db; color:white; border:none; border-radius:5px; cursor:pointer; margin-top:10px; margin-left:10px;\" \n                            onclick=\"showHint40(1)\">\n                        Aide\n                    <\/button>\n                <\/div>\n            <\/div>\n            \n            <div id=\"feedback40-2\" style=\"padding:10px; margin:10px 0; border-radius:5px; display:none;\"><\/div>\n            \n            <div style=\"margin-bottom:20px;\">\n                <p style=\"font-weight:bold; color:#27ae60; margin-bottom:15px;\">2. Transformer de l'indicatif au subjonctif :<\/p>\n                <div style=\"background-color:#f8f9fa; padding:15px; border-radius:5px;\">\n                    <p style=\"margin:5px 0;\">Original : <strong>\"Je crois qu'il comprend la le\u00e7on.\"<\/strong><\/p>\n                    <div style=\"display:flex; gap:20px; flex-wrap:wrap;\" id=\"question40-2\">\n                        <div style=\"padding:10px 20px; background-color:white; border:2px solid #27ae60; border-radius:5px; cursor:pointer; margin:5px; transition:all 0.3s;\" \n                             onclick=\"checkAnswer40Choice(this, 'Je doute qu\\'il comprenne la le\u00e7on.', true, 2)\">\n                            Je doute qu'il comprenne la le\u00e7on.\n                        <\/div>\n                        <div style=\"padding:10px 20px; background-color:white; border:2px solid #27ae60; border-radius:5px; cursor:pointer; margin:5px; transition:all 0.3s;\" \n                             onclick=\"checkAnswer40Choice(this, 'Je pense qu\\'il comprend la le\u00e7on.', false, 2)\">\n                            Je pense qu'il comprend la le\u00e7on.\n                        <\/div>\n                        <div style=\"padding:10px 20px; background-color:white; border:2px solid #27ae60; border-radius:5px; cursor:pointer; margin:5px; transition:all 0.3s;\" \n                             onclick=\"checkAnswer40Choice(this, 'Je sais qu\\'il comprend la le\u00e7on.', false, 2)\">\n                            Je sais qu'il comprend la le\u00e7on.\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n            \n            <div id=\"feedback40-3\" style=\"padding:10px; margin:10px 0; border-radius:5px; display:none;\"><\/div>\n            \n            <div style=\"margin-bottom:20px;\">\n                <p style=\"font-weight:bold; color:#27ae60; margin-bottom:15px;\">3. Transformer la phrase active en phrase passive :<\/p>\n                <div style=\"background-color:#f8f9fa; padding:15px; border-radius:5px;\">\n                    <p style=\"margin:5px 0;\">Original : <strong>\"Le professeur explique la le\u00e7on.\"<\/strong><\/p>\n                    <div id=\"response40-3\" style=\"min-height:40px; padding:10px; background-color:white; border:1px dashed #ccc; border-radius:3px; margin-bottom:10px;\"><\/div>\n                    <div style=\"display:flex; gap:10px; flex-wrap:wrap;\">\n                        <input type=\"text\" id=\"input40-3\" style=\"flex:1; min-width:200px; padding:10px; border:2px solid #27ae60; border-radius:5px;\" \n                               placeholder=\"\u00c9crivez la phrase passive...\">\n                        <button style=\"padding:8px 20px; background-color:#27ae60; color:white; border:none; border-radius:5px; cursor:pointer;\" \n                                onclick=\"checkAnswer40(3)\">\n                            V\u00e9rifier\n                        <\/button>\n                    <\/div>\n                <\/div>\n            <\/div>\n            \n            <div style=\"font-weight:bold; color:#2c3e50; margin-top:20px;\" id=\"score40\">Progression : 0\/3 exercices<\/div>\n            \n            <button style=\"padding:10px 20px; background-color:#9b59b6; color:white; border:none; border-radius:5px; cursor:pointer; margin-top:20px; font-weight:bold;\" \n                    onclick=\"resetExercise40()\">\n                Recommencer l'exercice\n            <\/button>\n            \n            <button style=\"padding:10px 20px; background-color:#3498db; color:white; border:none; border-radius:5px; cursor:pointer; margin-top:20px; margin-left:10px; font-weight:bold;\" \n                    onclick=\"showAllAnswers40()\">\n                Voir les r\u00e9ponses\n            <\/button>\n        <\/div>\n    <\/div>\n<\/div>\n\n<script>\n    let score40 = 0;\n    let totalQuestions40 = 3;\n    let answeredQuestions40 = new Set();\n    const correctAnswers40 = {\n        1: \"Le professeur expliquait la le\u00e7on aux \u00e9l\u00e8ves. Ils ont bien compris et ont pos\u00e9 des questions. Le lendemain, ils ont fait un exercice pour pratiquer.\",\n        2: \"Je doute qu'il comprenne la le\u00e7on.\",\n        3: \"La le\u00e7on est expliqu\u00e9e par le professeur.\"\n    };\n    const hints40 = {\n        1: \"Indice : Utilisez l'imparfait pour les descriptions et habitudes, et le pass\u00e9 compos\u00e9 pour les actions termin\u00e9es.\",\n        2: \"Indice : Le subjonctif s'utilise apr\u00e8s des verbes exprimant le doute, comme 'douter que'.\",\n        3: \"Indice : Forme passive = \u00eatre + participe pass\u00e9 + par + agent. Attention \u00e0 l'accord du participe pass\u00e9 !\"\n    };\n\n    function checkAnswer40(questionNum) {\n        if (answeredQuestions40.has(questionNum)) return;\n        \n        let userAnswer;\n        let isCorrect = false;\n        \n        if (questionNum === 1) {\n            userAnswer = document.getElementById('input40-1').value.trim();\n            \/\/ V\u00e9rification plus flexible pour la question 1 (texte libre)\n            const expected = correctAnswers40[1].toLowerCase();\n            const user = userAnswer.toLowerCase();\n            const keyWords = ['expliquait', 'ont compris', 'ont pos\u00e9', 'ont fait'];\n            const matches = keyWords.filter(word => user.includes(word));\n            isCorrect = matches.length >= 3; \/\/ Au moins 3 mots-cl\u00e9s corrects\n        } else if (questionNum === 3) {\n            userAnswer = document.getElementById('input40-3').value.trim();\n            const expected = correctAnswers40[3].toLowerCase();\n            const user = userAnswer.toLowerCase();\n            isCorrect = user.includes('est expliqu\u00e9e') || user.includes('est expliqu\u00e9') || \n                       user.includes('a \u00e9t\u00e9 expliqu\u00e9e') || user.includes('a \u00e9t\u00e9 expliqu\u00e9');\n        }\n        \n        answeredQuestions40.add(questionNum);\n        \n        if (questionNum === 1 || questionNum === 3) {\n            const responseDiv = document.getElementById(`response40-${questionNum}`);\n            responseDiv.innerHTML = `<strong>Votre r\u00e9ponse :<\/strong> ${userAnswer}`;\n            responseDiv.style.border = '1px solid #ddd';\n            responseDiv.style.backgroundColor = '#f8f9fa';\n        }\n        \n        if (isCorrect) {\n            score40++;\n            if (questionNum === 1 || questionNum === 3) {\n                showFeedback40(questionNum, \"\u2705 Excellent ! Votre transformation est correcte.\", 'success');\n            }\n        } else {\n            if (questionNum === 1 || questionNum === 3) {\n                showFeedback40(questionNum, \"\u274c Presque ! V\u00e9rifiez les temps verbaux. Utilisez le bouton 'Aide' si besoin.\", 'error');\n            }\n        }\n        \n        updateScore40();\n        checkCompletion40();\n    }\n\n    function checkAnswer40Choice(element, answer, isCorrect, questionNum) {\n        if (answeredQuestions40.has(questionNum)) return;\n        \n        answeredQuestions40.add(questionNum);\n        \n        const options = document.querySelectorAll(`#question40-${questionNum} > div`);\n        options.forEach(opt => {\n            opt.style.cursor = 'default';\n            opt.onclick = null;\n        });\n        \n        if (isCorrect) {\n            element.style.backgroundColor = '#a5d6a7';\n            element.style.color = '#1b5e20';\n            element.style.borderColor = '#1b5e20';\n            score40++;\n            showFeedback40(questionNum, \"\u2705 Parfait ! Vous avez bien transform\u00e9 en subjonctif.\", 'success');\n        } else {\n            element.style.backgroundColor = '#ffcdd2';\n            element.style.color = '#c62828';\n            element.style.borderColor = '#c62828';\n            options.forEach(opt => {\n                if (opt.textContent.includes(\"doute qu'il comprenne\")) {\n                    opt.style.backgroundColor = '#a5d6a7';\n                    opt.style.color = '#1b5e20';\n                    opt.style.borderColor = '#1b5e20';\n                }\n            });\n            showFeedback40(questionNum, \"\u274c Attention ! Le subjonctif s'utilise apr\u00e8s les verbes de doute.\", 'error');\n        }\n        \n        updateScore40();\n        checkCompletion40();\n    }\n\n    function showFeedback40(questionNum, message, type) {\n        const feedbackDiv = document.getElementById(`feedback40-${questionNum}`);\n        feedbackDiv.textContent = message;\n        feedbackDiv.style.display = 'block';\n        feedbackDiv.style.backgroundColor = type === 'success' ? '#d4edda' : '#f8d7da';\n        feedbackDiv.style.color = type === 'success' ? '#155724' : '#721c24';\n        feedbackDiv.style.border = `1px solid ${type === 'success' ? '#c3e6cb' : '#f5c6cb'}`;\n    }\n\n    function showHint40(questionNum) {\n        const feedbackDiv = document.getElementById(`feedback40-${questionNum}`);\n        feedbackDiv.textContent = `\ud83d\udca1 ${hints40[questionNum]}`;\n        feedbackDiv.style.display = 'block';\n        feedbackDiv.style.backgroundColor = '#fff3cd';\n        feedbackDiv.style.color = '#856404';\n        feedbackDiv.style.border = '1px solid #ffeaa7';\n    }\n\n    function updateScore40() {\n        document.getElementById('score40').textContent = `Progression : ${score40}\/${totalQuestions40} exercices`;\n    }\n\n    function checkCompletion40() {\n        if (answeredQuestions40.size === totalQuestions40) {\n            let message = '';\n            if (score40 === totalQuestions40) {\n                message = \"\ud83c\udf89 F\u00e9licitations ! Vous ma\u00eetrisez parfaitement les transformations grammaticales !\";\n            } else if (score40 >= totalQuestions40\/2) {\n                message = \"\ud83d\udc4d Bon travail ! Continuez \u00e0 pratiquer pour perfectionner vos comp\u00e9tences.\";\n            } else {\n                message = \"\ud83d\udcaa Continuez \u00e0 vous entra\u00eener ! La conjugaison demande de la pratique r\u00e9guli\u00e8re.\";\n            }\n            \n            const finalMessage = document.createElement('div');\n            finalMessage.style.padding = '10px';\n            finalMessage.style.margin = '10px 0';\n            finalMessage.style.borderRadius = '5px';\n            finalMessage.style.backgroundColor = '#d1ecf1';\n            finalMessage.style.color = '#0c5460';\n            finalMessage.style.border = '1px solid #bee5eb';\n            finalMessage.textContent = message;\n            finalMessage.style.display = 'block';\n            \n            const exerciseDiv = document.querySelector('button[onclick=\"resetExercise40()\"]').parentNode;\n            exerciseDiv.insertBefore(finalMessage, document.querySelector('button[onclick=\"resetExercise40()\"]'));\n        }\n    }\n\n    function showAllAnswers40() {\n        document.getElementById('response40-1').innerHTML = `<strong>R\u00e9ponse sugg\u00e9r\u00e9e :<\/strong> ${correctAnswers40[1]}`;\n        document.getElementById('response40-1').style.backgroundColor = '#e8f5e9';\n        document.getElementById('response40-1').style.border = '1px solid #a5d6a7';\n        \n        document.getElementById('response40-3').innerHTML = `<strong>R\u00e9ponse sugg\u00e9r\u00e9e :<\/strong> ${correctAnswers40[3]}`;\n        document.getElementById('response40-3').style.backgroundColor = '#e8f5e9';\n        document.getElementById('response40-3').style.border = '1px solid #a5d6a7';\n        \n        const options2 = document.querySelectorAll('#question40-2 > div');\n        options2.forEach(opt => {\n            opt.style.cursor = 'default';\n            opt.onclick = null;\n            if (opt.textContent.includes(\"doute qu'il comprenne\")) {\n                opt.style.backgroundColor = '#a5d6a7';\n                opt.style.color = '#1b5e20';\n                opt.style.borderColor = '#1b5e20';\n            } else {\n                opt.style.backgroundColor = '#ffcdd2';\n                opt.style.color = '#c62828';\n                opt.style.borderColor = '#c62828';\n            }\n        });\n        \n        if (!answeredQuestions40.has(1)) answeredQuestions40.add(1);\n        if (!answeredQuestions40.has(2)) answeredQuestions40.add(2);\n        if (!answeredQuestions40.has(3)) answeredQuestions40.add(3);\n        \n        updateScore40();\n    }\n\n    function resetExercise40() {\n        score40 = 0;\n        answeredQuestions40.clear();\n        \n        \/\/ R\u00e9initialiser les champs de texte\n        document.getElementById('input40-1').value = '';\n        document.getElementById('input40-3').value = '';\n        \n        \/\/ R\u00e9initialiser les r\u00e9ponses affich\u00e9es\n        document.getElementById('response40-1').innerHTML = '';\n        document.getElementById('response40-1').style.backgroundColor = 'white';\n        document.getElementById('response40-1').style.border = '1px dashed #ccc';\n        \n        document.getElementById('response40-3').innerHTML = '';\n        document.getElementById('response40-3').style.backgroundColor = 'white';\n        document.getElementById('response40-3').style.border = '1px dashed #ccc';\n        \n        \/\/ R\u00e9initialiser les choix multiples\n        const options2 = document.querySelectorAll('#question40-2 > div');\n        options2.forEach(option => {\n            option.style.backgroundColor = 'white';\n            option.style.color = '#27ae60';\n            option.style.borderColor = '#27ae60';\n            option.style.cursor = 'pointer';\n            \n            const text = option.textContent;\n            const isCorrect = text.includes(\"doute qu'il comprenne\");\n            \n            option.onclick = function() {\n                checkAnswer40Choice(this, text, isCorrect, 2);\n            };\n        });\n        \n        \/\/ Cacher les feedbacks\n        const feedbacks = document.querySelectorAll('[id^=\"feedback40-\"]');\n        feedbacks.forEach(feedback => {\n            feedback.style.display = 'none';\n            feedback.textContent = '';\n        });\n        \n        \/\/ Supprimer le message final\n        const finalMsg = document.querySelector('button[onclick=\"resetExercise40()\"]').previousElementSibling;\n        if (finalMsg && finalMsg.style && finalMsg.style.backgroundColor === '#d1ecf1') {\n            finalMsg.remove();\n        }\n        \n        updateScore40();\n    }\n\n    updateScore40();\n<\/script>\n<div class=\"gsp_post_data\" \r\n\t            data-post_type=\"dt_lessons\" \r\n\t            data-cat=\"\" \r\n\t            data-modified=\"120\"\r\n\t            data-created=\"1765813810\"\r\n\t            data-title=\"Le\u00e7on 40 : R\u00e9vision g\u00e9n\u00e9rale de la conjugaison\" \r\n\t            data-home=\"https:\/\/activities.myyaformation.com\/en\"><\/div>","protected":false},"excerpt":{"rendered":"<p>Le\u00e7on 40 : R\u00e9vision g\u00e9n\u00e9rale de la conjugaison Objectifs : \u2713 Ma\u00eetriser les temps simples et compos\u00e9s \u2713 Produire une narration coh\u00e9rente \u2713 S&rsquo;exprimer avec nuance Outils disponibles : \ud83d\udcca [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"","class_list":["post-15283","dt_lessons","type-dt_lessons","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/activities.myyaformation.com\/en\/wp-json\/wp\/v2\/dt_lessons\/15283","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/activities.myyaformation.com\/en\/wp-json\/wp\/v2\/dt_lessons"}],"about":[{"href":"https:\/\/activities.myyaformation.com\/en\/wp-json\/wp\/v2\/types\/dt_lessons"}],"author":[{"embeddable":true,"href":"https:\/\/activities.myyaformation.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/activities.myyaformation.com\/en\/wp-json\/wp\/v2\/comments?post=15283"}],"version-history":[{"count":1,"href":"https:\/\/activities.myyaformation.com\/en\/wp-json\/wp\/v2\/dt_lessons\/15283\/revisions"}],"predecessor-version":[{"id":15288,"href":"https:\/\/activities.myyaformation.com\/en\/wp-json\/wp\/v2\/dt_lessons\/15283\/revisions\/15288"}],"wp:attachment":[{"href":"https:\/\/activities.myyaformation.com\/en\/wp-json\/wp\/v2\/media?parent=15283"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}