From 09cfbed43981a5668c9cfe272af4da78d6450686 Mon Sep 17 00:00:00 2001 From: Jean-Christophe Jameux Date: Sat, 9 Oct 2021 19:34:15 +0200 Subject: [PATCH] =?UTF-8?q?L'algo=20tourne,=20mais=20ne=20rend=20pas=20le?= =?UTF-8?q?=20r=C3=A9sultat=20escompt=C3=A9...?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- elm-stuff/0.19.1/QCM.elmi | Bin 8967 -> 9178 bytes elm-stuff/0.19.1/QCM.elmo | Bin 68748 -> 71115 bytes elm-stuff/0.19.1/d.dat | Bin 1626 -> 1626 bytes src/QCM.elm | 32 +++++++++++++++++++++++--------- 4 files changed, 23 insertions(+), 9 deletions(-) diff --git a/elm-stuff/0.19.1/QCM.elmi b/elm-stuff/0.19.1/QCM.elmi index cfc1781dab5f191accd35b26b0c77cf2bbf42bec..b38fe7084134505ff312b00613c41fe6a04fb416 100644 GIT binary patch delta 374 zcmZp7yX8JXjL~SL_%r^^)`A`^T%3iasl_Fk`FX{g`$bI{H#16zFmZ7frREmoBqpa8 zO>SV7Wn`VakWW~V%MmWh00oRpPzDoASz^xQ0zQ2<=CZ^h28PKOIV2_*@`+D=Ag(yM zkX?TAdKq3_9k_m<#IVGo%*3Re)PTeypVZ>8#GKU9qGFfCykeh3=ZwV6ywu5xyo!^J zSQLOd`9P*koFp>&11mSkAZcm1K_U62C172t#ZYY%1?9+huO5;un?YJEcln)FzIk4}$m1+P)Z)x@b delta 80 zcmccR-tIO*jL~qT_%nV^&Vt0E;?yFi%*}oxri`2a@_VrGa2J-Q7MEn^=lSQPZ1xv1 kVchI062!c@Qp$jXor%>qF}Wyz@v0?fW#Su5E38|y!ZCKT?Z-?*N3<3nKv`PnfcAw z7k@VH{AOG_024R>_BYm^z?-i7wBiL?PK!P|Y0|)GQoqrsB;uPXPOdchfq#Pg*NK~} zj%H6zlw&U`X#$y8BqizrTB1rq(x5?Rn+=u!OypikGLC4$WHAK@jy#8@b_-{8j zqp8YiTCI7?S@I;@ykM}Sp@hI?c;=CFg+KwXjT-n*rU(BnFT+V zTHqvcIBncEsB!*@b75;MB@WW#G^o-k-#bJDmfdmcdvifUD|(2!S$VT6Q4t#8gQu zA|{3(ek;okD8MViyWCe4UwI3U=&?miBezm3aQNQJD!mNrJRQ&ii~}U27k| zBxu~WHhhRnB;kYB?y~BM&W9~M5e>WC3QPjZiLPs!nU-qSA)N+NrD=rQ77TX8vDqeI z3yW<6F@f}3S3KuOZMG3?9GtWdcT_VON-vr$E@zK;iI$`SmBMRok*|`??ebOmm;x>? zT-RCxk zlvlpZ%ITSg$9`n`zh=_A+(aT-jk#T$x?76H`+pgF!o@D==LZj$!Ut;|o-IDzzjN_* q7YspIx4>j;O8jqG?6F|04(V_#3wz3JB}?bxPmFpunpN+t%KsBN6KQ_{ delta 374 zcmX@Tnx$tZ%LGqGkI9Y9!W%d55Zo*$y>u@pXF+07acYrM=Hvr^#U`IWr#xMrnbCOi z-+vseOpFzbm6IK~WG3&(6PtdXg^_Lg8$L!3W>&@ukSGrmD`O=O0|ZPy_*Zm#12d!U z^fVSm>&c(ai%g#XPkeI4e?JbW3ZBUi#l@!1WaOW|hlNp_n=3gZKer$}BQqy;>MKTX zkY2&*`mBsXlh577ks*}SQ1*Vq>GRjQ8cvf=zS3yQo#_21082Pq`3Ns2YF|tli P6J>Pd&P*+b`k4^`S7~zw diff --git a/elm-stuff/0.19.1/d.dat b/elm-stuff/0.19.1/d.dat index 5432b3b99efa4c5ec8cb78805861b7b7464d8abb..35e503b6996cef6e251e59c7dda16b3e4904bd79 100644 GIT binary patch delta 40 scmcb`bBkw!KBMnO10N=i1^cE>2-uQ2VR8%8c20K&2=LwP!YsxN0487z5dZ)H delta 40 scmcb`bBkw!KBL1%10N<1h20MhIdA>lJGq5vJ0}YR1UPJVVHRTs04bRaF#rGn diff --git a/src/QCM.elm b/src/QCM.elm index 1d3d6ea..4b99dc3 100644 --- a/src/QCM.elm +++ b/src/QCM.elm @@ -83,7 +83,7 @@ view model = <| input [ placeholder "Format de la question", value model.question, onInput Question ] [] :: button [ onClick GenererQuestion ] [ text "Générer les questions" ] :: ( p [] <| L.map text model.questions ) - :: [ text + :: text ( let expressionParseePotentielle = PM.parseMaths "3+(2/3)^-2/3" in @@ -93,7 +93,14 @@ view model = case Maybe.map F.teX <| PM.evaluer <| expressionParsee of Just a -> a Nothing -> "Les puissances non-entières ne sont pas acceptées." - ) ] + ) + :: L.map text + ( remplacer + [ Aremplacer "a" ["1","2"], Aremplacer "b" ["3","4"] ] + [ Texte "Calculer $", Variable "a" , Texte "+" , Variable "a+b" , Texte "$."] + ) + ++ L.map text (remplacer [] [Texte "chose"]) + ++ L.map text (remplacer [] [Texte "chose"]) {- , [ dl05 [0, 4, 2] 5 ] @@ -202,19 +209,25 @@ type alias Aremplacer = remplacer : List Aremplacer -> List TexteVariable -> List String remplacer ars tvs = case tvs of - [] -> [] - Texte chaine :: tvss -> L.map S.append chaine <| remplacer ars tvss - Variable chaine :: tvss -> mix ([chaine]) (remplacer ars tvss) + [] -> [""] + Texte chaine :: tvss -> L.map (S.append chaine) <| remplacer ars tvss + Variable chaine :: tvss -> + mix + [ remplacerToutDansLesChaines ars [chaine] + , remplacer ars tvss + ] + |> L.map S.concat -remplacerToutDansLesChaines List Aremplacer -> List String -> List String +remplacerToutDansLesChaines : List Aremplacer -> List String -> List String remplacerToutDansLesChaines ars chaines = case ars of [] -> chaines ar :: arss -> - (L.concat <| L.map (remplacerLaVariableParLesValeursDansLaChaine ar.var ar.val) chaines) - :: + L.map (remplacerLaVariableParLesValeursDansLaChaine ar.var ar.vals) chaines + |> L.concat + |> remplacerToutDansLesChaines arss {-- case chaines of chaine :: chainess -> @@ -224,12 +237,13 @@ remplacerToutDansLesChaines ars chaines = remplacerDansLeTexteVariable ar t |> --} - +{-- remplacerDansLeTexteVariable : Aremplacer -> TexteVariable -> List String remplacerDansLeTexteVariable a t = case t of Texte tt -> Texte tt Variable tt -> remplacerLaVariableParLesValeursDansLaChaine a.var a.vals tt +--} remplacerLaVariableParLesValeursDansLaChaine : String -> List String -> String -> List String remplacerLaVariableParLesValeursDansLaChaine var vals chaine =