Incoporation de tout les enigmes solo

ServeurDeTest
Noé GARNIER 3 years ago
parent 18c452235b
commit 1446f9e113

@ -14,7 +14,8 @@ $rep = __DIR__ . '/../';
// $password = 'p'; // $password = 'p';
// SQULITE3 // SQULITE3
$dsn = './Model/scripted.db'; // $dsn = './scripted.db';
$dsn = 'C:\\wamp64\\www\\scripted.db';
//Sel de hashage //Sel de hashage
$sel = "JeSuisUnSeldeHashageEtJeSuisUniqueEtTresSecuriseEtJeSuisTresLong"; $sel = "JeSuisUnSeldeHashageEtJeSuisUniqueEtTresSecuriseEtJeSuisTresLong";
@ -33,6 +34,8 @@ $vues['chouette'] = 'View/src/pages/Enigme/Chouette.html';
$vues['cesarEncrypt'] = 'View/src/pages/Enigme/CesarEncrypt.html'; $vues['cesarEncrypt'] = 'View/src/pages/Enigme/CesarEncrypt.html';
$vues['cesarDecrypt'] = 'View/src/pages/Enigme/CesarDecrypt.html'; $vues['cesarDecrypt'] = 'View/src/pages/Enigme/CesarDecrypt.html';
$vues['chuckNorris'] = 'View/src/pages/Enigme/ChuckNorris.html'; $vues['chuckNorris'] = 'View/src/pages/Enigme/ChuckNorris.html';
$vues['hanoi'] = 'View/src/pages/Enigme/Hanoi.html';
$vues['trianglePascal'] = 'View/src/pages/Enigme/TrianglePascal.html';
//Error //Error
$vues['erreur'] = 'View/src/pages/Erreur.php'; $vues['erreur'] = 'View/src/pages/Erreur.php';

@ -39,6 +39,12 @@ class UserController
case "goToChuckNorris" : case "goToChuckNorris" :
$model->goToChuckNorris(); $model->goToChuckNorris();
break; break;
case "goToHanoi" :
$model->goToHanoi();
break;
case "goToTrianglePascal":
$model->goToTrianglePascal();
break;
case "goToQueue": case "goToQueue":
$model->goToQueue(); $model->goToQueue();
break; break;

@ -91,6 +91,26 @@ class UserModel
require($rep . $vues['erreur']); require($rep . $vues['erreur']);
} }
} }
public function goToHanoi()
{
global $rep, $vues, $error;
try {
require($rep . $vues['hanoi']);
} catch (Exception $e) {
$error = "404";
require($rep . $vues['erreur']);
}
}
public function goToTrianglePascal()
{
global $rep, $vues, $error;
try {
require($rep . $vues['trianglePascal']);
} catch (Exception $e) {
$error = "404";
require($rep . $vues['erreur']);
}
}
public function goToTest() public function goToTest()
{ {
@ -153,7 +173,6 @@ class UserModel
//trigger_event('add_to_queue',$userGroup); //trigger_event('add_to_queue',$userGroup);
} }
<<<<<<< HEAD
public function AddUserToQueueEvent(){ public function AddUserToQueueEvent(){
$userGroup=$this->utilisateur_gateway->findUsersInQueue(); $userGroup=$this->utilisateur_gateway->findUsersInQueue();
if($userGroup.count()>=4) if($userGroup.count()>=4)
@ -162,8 +181,6 @@ class UserModel
} }
} }
=======
>>>>>>> 146a4b62fc5bc2340e9c08c07650a6efb799c3fb
public function logout() public function logout()
{ {
$_SESSION['role'] = 'visitor'; $_SESSION['role'] = 'visitor';

Binary file not shown.

@ -16,7 +16,6 @@ def triVerif(a,b):
return s return s
def triTest(x): def triTest(x):
tri(a,b)
a = "Hlowrd" a = "Hlowrd"
b = "el ol" b = "el ol"
if(triVerif(a,b)!=tri(a,b)): if(triVerif(a,b)!=tri(a,b)):

@ -18,12 +18,12 @@ def estTriangleDePascal(n):
return triangle return triangle
def testTriangleDePascal(n): def testTriangleDePascal(n):
TriangleDePascal(0) triangle_pascal(0)
listTest=[0,1] listTest=[0,1]
for i in range(0,n): for i in range(0,n):
listTest.append(r.randint(5,140)) listTest.append(r.randint(5,140))
for i in listTest: for i in listTest:
if(TriangleDePascal(i)!=estTriangleDePascal(i)): if(triangle_pascal(i)!=estTriangleDePascal(i)):
return False return False
return True return True

@ -70,17 +70,18 @@
Code Cesar Code Cesar
</h2> </h2>
<p> <p>
Écrire une fonction <b style="color : violet">Decrypt</b> qui prend en argument un message et une clé Écrire une fonction <b style="color : violet">Decrypt</b> qui prend en argument
et qui retourne le message décrypté avec le code <b style="color: violet;">César</b>.(les espace ne seront pas encodé.) un <b style="color: #44fff6;">message</b> et une <b style="color: #44fff6;">clé</b>
et qui retourne le message décrypté avec le code <b>César</b>.(les espace ne seront pas encodé.)
</p> </p>
<h3 class="text-left pb-3 pt-5" style="color: #44fff6">Rappel</h3> <h3 class="text-left pb-3 pt-5" style="color: #44fff6">Rappel</h3>
<p> <p>
Le code César (ou chiffre de César ) est un chiffrement par substitution, Le code <b>César</b> (ou chiffre de César ) est un chiffrement par substitution,
<br>où chaque lettre est remplacée par une autre lettre se situant un peu plus loin dans l'alphabet . <br>où chaque lettre est remplacée par une autre lettre se situant un peu plus loin dans l'alphabet .
<br>Par exemple A avec une clé 2 devient C. <br>Par exemple A avec une clé 2 devient C.
</p> </p>
<h3 class="text-left pb-3 pt-5" style="color: #44fff6">Exemple</h3> <h3 class="text-left pb-3 pt-5" style="color: #44fff6">Exemple</h3>
<p>Entrée :&emsp;&emsp;&emsp;&emsp;&emsp;&emsp;Sortie :</p> <p><b>Entrée</b> :&emsp;&emsp;&emsp;&emsp;&emsp;&emsp;<b>Sortie</b> :</p>
<p>'fbehu',3&emsp;&emsp;&emsp;&emsp;&emsp;&nbsp;cyber</p> <p>'fbehu',3&emsp;&emsp;&emsp;&emsp;&emsp;&nbsp;cyber</p>
<h3 <h3
class="text-left pb-3 pt-5 help" class="text-left pb-3 pt-5 help"

@ -70,17 +70,18 @@
Code Cesar Code Cesar
</h2> </h2>
<p> <p>
Écrire une fonction <b style="color : violet">Encrypt</b> qui prend en argument un message et une clé Écrire une fonction <b style="color : violet">Encrypt</b> qui prend en argument
et qui retourne le message crypté avec le code <b style="color: violet;">César</b>.(les espace ne seront pas encodé.) un <b style="color:#44fff6;">message</b> et une <b style="color:#44fff6;">clé</b>
et qui retourne le <b style="color: yellow;"> message crypté</b> avec le code <b>César</b>.(les espace ne seront pas encodé.)
</p> </p>
<h3 class="text-left pb-3 pt-5" style="color: #44fff6">Rappel</h3> <h3 class="text-left pb-3 pt-5" style="color: #44fff6">Rappel</h3>
<p> <p>
Le code César (ou chiffre de César ) est un chiffrement par substitution, Le code <b>César</b> (ou chiffre de César ) est un chiffrement par substitution,
<br>où chaque lettre est remplacée par une autre lettre se situant un peu plus loin dans l'alphabet . <br>où chaque lettre est remplacée par une autre lettre se situant un peu plus loin dans l'alphabet .
<br>Par exemple A avec une clé 2 devient C. <br>Par exemple A avec une clé 2 devient C.
</p> </p>
<h3 class="text-left pb-3 pt-5" style="color: #44fff6">Exemple</h3> <h3 class="text-left pb-3 pt-5" style="color: #44fff6">Exemple</h3>
<p>Entrée :&emsp;&emsp;&emsp;&emsp;&emsp;&emsp;Sortie :</p> <p><b>Entrée</b> :&emsp;&emsp;&emsp;&emsp;&emsp;&emsp;<b>Sortie</b> :</p>
<p>'fbehu',3&emsp;&emsp;&emsp;&emsp;&emsp;&nbsp;cyber</p> <p>'fbehu',3&emsp;&emsp;&emsp;&emsp;&emsp;&nbsp;cyber</p>
<h3 <h3
class="text-left pb-3 pt-5 help" class="text-left pb-3 pt-5 help"

@ -70,13 +70,15 @@
Chouette Chouette
</h2> </h2>
<p> <p>
Écrire une fonction <b style="color: violet;">chouette</b> qui, pour une valeur donnée, renvoie une <b style="color: violet;">liste</b> contenant toutes les solutions de somme de 3 dés pouvant donner cette valeur. Écrire une fonction <b style="color: violet;">chouette</b> qui, pour une <b style="color: #44fff6;">valeur</b> donnée,
</br>La valeur peut aller de 3 à 18 . renvoie une <b style="color:yellow">liste</b>
contenant toutes les solutions de somme de 3 dés pouvant donner cette <b style="color: #44fff6;">valeur</b>.
</br>La <b style="color:#44fff6;">valeur</b> peut aller de 3 à 18 .
</br>Les solutions doivent être uniques.(1,2,3) et (3,2,1) sont la même solution. </br>Les solutions doivent être uniques.(1,2,3) et (3,2,1) sont la même solution.
</p> </p>
<h3 class="text-left pb-3 pt-5" style="color: #44fff6">Exemple</h3> <h3 class="text-left pb-3 pt-5" style="color: #44fff6">Exemple</h3>
<p>Entrée : 7</p> <p><b>Entrée</b> : 7</p>
<p>Sortie : [[1,1,5],[1,2,4],[1,3,3],[2,2,3]]</p> <p><b>Sortie</b> : [[1,1,5],[1,2,4],[1,3,3],[2,2,3]]</p>
<h3 <h3
class="text-left pb-3 pt-5 help" class="text-left pb-3 pt-5 help"
style="color: #44fff6; display: none" style="color: #44fff6; display: none"

@ -70,16 +70,16 @@
Chuck Norris Chuck Norris
</h2> </h2>
<p> <p>
Coder un fonction <b style="color: violet;">binaire2unaire</b> qui prend en argument un nombre binaire Coder un fonction <b style="color: violet;">binaire2unaire</b> qui prend en argument un <b style="color: #44fff6;">nombre binaire</b>
et le code via le codage Chucknorris. et qui le retourne le <b style="color: yellow;">nombre</b> codé via le codage <b>Chuck Norris</b>.
</p> </p>
<h3 class="text-left pb-3 pt-5" style="color: #44fff6">Rappel</h3> <h3 class="text-left pb-3 pt-5" style="color: #44fff6">Rappel</h3>
<p> <p>
Dans le codage Chuck Norris, le '0' est codé '00' et le '1' est codé '0'. Puis un espace, puis ensuite autant de '0' que le message contient de '0' ou '1' successifs. Dans le codage <b>Chuck Norris</b>, le '0' est codé '00' et le '1' est codé '0'. Puis un espace, puis ensuite autant de '0' que le message contient de '0' ou '1' successifs.
<br>Par exemple, la suite "10000111" sera traduite de la façon suivante : "0 0 00 0000 0 000 <br>Par exemple, la suite "10000111" sera traduite de la façon suivante : "0 0 00 0000 0 000
</p> </p>
<h3 class="text-left pb-3 pt-5" style="color: #44fff6">Exemple</h3> <h3 class="text-left pb-3 pt-5" style="color: #44fff6">Exemple</h3>
<p>Entrée :&emsp;&emsp;&emsp;&emsp;&emsp;&emsp;Sortie :</p> <p><b>Entrée</b> :&emsp;&emsp;&emsp;&emsp;&emsp;&emsp;<b>Sortie</b> :</p>
<p>10000111&emsp;&emsp;&emsp;&emsp;&emsp;&nbsp;0 0 00 0000 0 000</p> <p>10000111&emsp;&emsp;&emsp;&emsp;&emsp;&nbsp;0 0 00 0000 0 000</p>
<h3 <h3
class="text-left pb-3 pt-5 help" class="text-left pb-3 pt-5 help"
@ -164,7 +164,7 @@
<h5 id="result" style="color: black"></h5> <h5 id="result" style="color: black"></h5>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<a href="index.php?action=goToHome" class="btn" style="display: none" id="next"> <a href="index.php?action=goToHanoi" class="btn" style="display: none" id="next">
<span>NEXT</span> <span>NEXT</span>
</a> </a>
</div> </div>

@ -1,94 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Bootstrap Site</title>
<link
rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/5.0.0-alpha1/css/bootstrap.min.css"
integrity="sha384-r4NyP46KrjDleawBgD5tp8Y7UzmLA05oM1iAEQ17CSuDqnUK2+k9luXQOfXJCJ4I"
crossorigin="anonymous"/>
<link rel="stylesheet" href="../../CSS/Enigmev2.css"/>
<link rel="stylesheet" href="../../CSS/Main.css">
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
<script
src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js"
integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo"
crossorigin="anonymous"></script>
<script
src="https://stackpath.bootstrapcdn.com/bootstrap/5.0.0-alpha1/js/bootstrap.min.js"
integrity="sha384-oesi62hOLfzrys4LxRF63OJCXdXDipiYWBnvTl9Y9/TRlw5xlKIEHpNyvvDShgf/"
crossorigin="anonymous"></script>
</head>
<body style="background-color: #050e15;background-image: none;">
<div class="container-fluid">
<div class="row">
<div class="col-3" style="height: auto; min-height: 100vh;">
<div class="row">
<div class="col-2 text-center pt-3">
<a id="home" href="../Home.html" >
<svg xmlns="http://www.w3.org/2000/svg" style="color: white;" width="32" height="32" fill="currentColor" class="bi bi-house-fill" viewBox="0 0 16 16">
<path d="M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L8 2.207l6.646 6.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.707 1.5Z"/>
<path d="m8 3.293 6 6V13.5a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 13.5V9.293l6-6Z"/>
</svg>
</a>
</div>
<div class="col-10 pt-1">
<h1 class="display-5" style="letter-spacing: 0.1rem;""> <!--Mettre responsive si moins de 1500px-->
Palindrome
</h1><br>
</div>
</div>
<div>
<section class="row mt-3 ">
<h2>Consigne</h2><br>
<p class="enonce">Écrire une fonction estPalindrome qui prend en argument un entier et qui renvoie True si cest un palindrome et False sinon.</p><br><br>
</section>
<section class="row mt-3">
<h2>Rappel</h2><br>
<p class="rappel">Un palindrome est un nombre qui peut se lire dans les deux sens. Par exemple 111.</p><br><br>
</section>
<section class="row mt-3">
<h2>Exemple</h2><br>
<p>Entrée :&emsp;&emsp;&emsp;&emsp;&emsp;&emsp;Sortie :</p>
<p>[1,0,1]&emsp;&emsp;&emsp;&emsp;&emsp;&emsp;&emsp;&ensp;True</p>
<p>[1,1,9,1]&emsp;&emsp;&emsp;&emsp;&emsp;&emsp;&emsp;False</p><br><br>
</section>
<section class="row mt-3">
<h2>Aide</h2><br>
<p>En python linstruction [::-1] permet dinverse une chaine de caractère. Par exemple print("ae"[::-1]) affiche : ea.</p>
</section>
</div>
</div>
<div class="col-5 h-auto py-3">
<div class='ace' id='editor'>def estPalindrome(var):
return var == var[::-1]
print(estPalindrome("abba"))
</div>
</div>
<div class="col-4 py-3">
<div class='compiler_class'>
<textarea id='console' readonly cols="100" rows="30"></textarea>
</div>
<div class="buttons">
<div>
<a onclick="run_init()" class="btn">
<span class="noAnimation">Run</span>
</a>
<a href="#m1-o" onclick="submit()" class="btn">
<span class="noAnimation">Submit</span>
</a>
</div>
</div>
</div>
</div>
</div>
<script src="https://ajaxorg.github.io/ace-builds/src-noconflict/ace.js" type="text/javascript" charset="utf-8"></script>
<script src="https://raw.githack.com/pythonpad/brython-runner/master/lib/brython-runner.bundle.js" type="text/javascript" charset="utf-8"></script>
<script src="../../JS/base.js"></script>
<script src="../../JS/palindrome.js"></script>
</body>
</html>

@ -1,95 +1,197 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta charset="UTF-8"> <meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Hanoi</title>
<title>Palindrome</title> <link
<link rel="stylesheet" href="../../CSS/Enigme.css"/> rel="stylesheet"
<link rel="stylesheet" href="../../CSS/Home.css"> href="https://stackpath.bootstrapcdn.com/bootstrap/5.0.0-alpha1/css/bootstrap.min.css"
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons"> integrity="sha384-r4NyP46KrjDleawBgD5tp8Y7UzmLA05oM1iAEQ17CSuDqnUK2+k9luXQOfXJCJ4I"
<style> crossorigin="anonymous"
html{ />
background-image: url(../../../assets/img/Background5.jpg); <script
} src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js"
</style> integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo"
</head> crossorigin="anonymous"
<body> ></script>
<div class="enigme"> <script
<div class="titre_pre"> src="https://stackpath.bootstrapcdn.com/bootstrap/5.0.0-alpha1/js/bootstrap.min.js"
<div class="retour"> integrity="sha384-oesi62hOLfzrys4LxRF63OJCXdXDipiYWBnvTl9Y9/TRlw5xlKIEHpNyvvDShgf/"
<a class="material-icons" id="home" href="../Home.html" style="font-size:36px;color:white;">home</a> crossorigin="anonymous"
</div> ></script>
<div class="sign"> <link
<h1> rel="stylesheet"
<span class="fast-flicker">T</span> href="https://fonts.googleapis.com/icon?family=Material+Icons"
<span>our </span> />
<span class="flicker">&nbsp;H</span> <link rel="stylesheet" href="View/src/CSS/Enigme.css" />
<span>anoi</span> </head>
</h1> <body>
</div><br> <div class="container-fluid px-5">
</div> <!-- First Row -->
<h2>Consigne</h2><br> <div class="row py-4">
<p class="enonce"> <div class="col-9 d-flex align-items-center px-0">
Faire une fonction permettant de résoudre le problème des tours dhanoi peu importe le nombre d'entrées dans la fonction. <a
</p><br> class="material-icons pl-0"
<h2>Rappel</h2><br> id="home"
<p class="rappel">Le problème des tours de hanoi est le suivant, on souhaite déplacer un certain nombre de disque de taille différente et ils sont et doivent restés empilés de telle sorte quaucun disque dune certaine taille n soit placé en dessous dun disque de taille plus grande en sachant quil ny a que 3 piles. href="index.php?action=goToHome"
</p><br> style="font-size: 40px; color: white"
<h2>Exemple</h2><br> >home</a
<p>Entrée :3,"A","B","C"</p> >
<p>Sortie : [['A','C'],['A','B'],['C','B'],['A','C'],['B','A'],['B','C'],['A','C']]</p> </div>
<h2>Aide</h2><br> <button
<p>Une fonction récursive est une fonction qui fait appelle à elle même</p> style="background-color: transparent; border: none"
</div> onclick="displayHelp()"
<div class='ace' id='editor'>def hanoi(nb_disks,start, middle, end): class="col-3 d-flex align-items-center"
l=[] >
hanoi_rec(l,nb_disks,start, middle, end) <div class="col-10 text-right px-3">
return l <p style="font-size: 14px; color: white"><b>Besoin d'aide ?</b></p>
</div>
def hanoi_rec(l,nb_disks, start, middle, end): <div class="col-2 text-right">
if nb_disks == 1: <img
return l.append([start,end]) src="View/assets/img/Foxy.png"
else: alt="Logo"
hanoi_rec(l,nb_disks - 1, start, end, middle) class="rounded-circle moving-fox"
l.append([start,end]) style="border: 1px solid #44fff6; width: 60px; height: 60px"
hanoi_rec(l,nb_disks - 1, middle, start, end)</div> />
<div class='compiler_class'> </div>
<textarea id='console' readonly rows="30" cols="100"></textarea> </button>
<div class="buttons">
<div>
<a onclick="run_init()" class="btn">
<span class="noAnimation">Run</span>
</a>
<a href="#m1-o" onclick="submit()" class="btn">
<span class="noAnimation">Submit</span>
</a>
</div> </div>
<!-- End First Row -->
<!-- Second Row -->
<div class="row">
<!-- First Column -->
<div
class="col-3 rounded p-3"
style="background-color: #222831; min-height: 80vh; height: auto"
>
<h2 class="text-left py-3" style="color: #44fff6; font-weight: 500">
Les tours d'Hanoi
</h2>
<p>
Écrire une fonction <b style="color: violet;">hanoi</b> permettant de résoudre le problème des <b>tours dhanoi </b>
peu importe le nombre d'entrées dans la fonction. <br />
Cette fonction devra prend en paramètre le <b style="color: #44fff6;">nombre de disques</b>,
le <b style="color: #44fff6;">nom</b> de la tour de départ,
le <b style="color: #44fff6;">nom</b> la tour d'arrivée et
le <b style="color: #44fff6;">nom</b> la tour intermédiaire. <br />
Elle devra retoure une <b style="color: yellow;">liste</b> contenant les déplacements à effectuer (cf exemple ci-dessous).
</p>
<h3 class="text-left pb-3 pt-5" style="color: #44fff6">Rappel</h3>
<p>
Le problème des tours de <b>hanoi</b> est le suivant, on souhaite déplacer un certain nombre de disque de taille différente
et ils sont et doivent restés empilés de telle sorte
quaucun disque dune certaine taille n soit placé en dessous dun disque de taille plus grande
en sachant quil ny a que 3 piles.
</p>
<h3 class="text-left pb-3 pt-5" style="color: #44fff6">Exemple</h3>
<p><b>Entrée</b> :3,"A","B","C"</p>
<p><b>Sortie</b> : [['A','C'],['A','B'],['C','B'],['A','C'],['B','A'],['B','C'],['A','C']]</p>
<h3
class="text-left pb-3 pt-5 help"
style="color: #44fff6; display: none"
>
Aide
</h3>
<p style="display: none" class="help">
Pensse à utiliser une fonction récursive pour résoudre ce problème.
Pour rappel une fonction récursive est une fonction qui s'appelle elle même.
</p>
</div>
<!-- End First Column -->
<!-- Second Column -->
<div class="col-5 pr-0">
<div class="ace rounded" id="editor">def hanoi(nb_disks,start, middle, end):
</div> </div>
</div> </div>
<!-- End Second Column -->
<div class="modal-container" id="m1-o" style="--m-background: transparent;"> <!-- Third Column -->
<div class="modal"> <div class="col-4">
<div id="containerResult"> <textarea
<h1 id="result"></h1> id="console"
</div> readonly
<div class="buttons"> style="width: 100%; min-height: 65vh; height: auto"
<div id="top"> class="p-3 rounded"
<a href="#" class="btn"> ></textarea>
<span class="noAnimation">x</span>
</a> <div class="row pt-5 text-center" style="cursor: pointer">
<div class="col-6">
<a onclick="run_init()" class="btn">
<span>Run</span>
</a>
</div>
<div class="col-6">
<button
onclick="submit()"
class="btn"
data-toggle="modal"
data-target="#modal"
>
<span>Submit</span>
</button>
</div>
</div>
</div> </div>
<div id="bottom"> <!-- End Third Column -->
<a href="../Home.html" class="btn" id="fleche"> </div>
<span class="noAnimation">Next</span> <!-- End Second Row -->
</a> </div>
<!-- Modal -->
<div
class="modal fade"
id="modal"
tabindex="-1"
role="dialog"
aria-labelledby="exampleModalCenterTitle"
aria-hidden="true"
>
<div class="modal-dialog modal-dialog-centered" role="document">
<div class="modal-content">
<div class="modal-header">
<h2
class="modal-title"
id="exampleModalLongTitle"
style="color: black"
>
Results
</h2>
<button
type="button"
class="close"
data-dismiss="modal"
aria-label="Close"
>
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
<h5 id="result" style="color: black"></h5>
</div>
<div class="modal-footer">
<a href="index.php?action=goToTrianglePascal" class="btn" style="display: none" id="next">
<span>NEXT</span>
</a>
</div>
</div> </div>
</div> </div>
</div> </div>
</div> <!-- End Modal -->
<script src="https://ajaxorg.github.io/ace-builds/src-noconflict/ace.js" type="text/javascript" charset="utf-8"></script>
<script src="https://raw.githack.com/pythonpad/brython-runner/master/lib/brython-runner.bundle.js" type="text/javascript" charset="utf-8"></script> <script
<script src="../../JS/base.js"></script> src="https://ajaxorg.github.io/ace-builds/src-noconflict/ace.js"
<script src="../../JS/Hanoi.js"></script> type="text/javascript"
</body> charset="utf-8"
></script>
<script
src="https://raw.githack.com/pythonpad/brython-runner/master/lib/brython-runner.bundle.js"
type="text/javascript"
charset="utf-8"
></script>
<script src="View/src/JS/base.js"></script>
<script src="View/src/JS/Hanoi.js"></script>
</body>
</html> </html>

@ -1,102 +1,197 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta charset="UTF-8"> <meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Triangle de Pascal</title>
<title>Palindrome</title> <link
<link rel="stylesheet" href="../../CSS/Enigme.css"/> rel="stylesheet"
<link rel="stylesheet" href="../../CSS/Home.css"> href="https://stackpath.bootstrapcdn.com/bootstrap/5.0.0-alpha1/css/bootstrap.min.css"
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons"> integrity="sha384-r4NyP46KrjDleawBgD5tp8Y7UzmLA05oM1iAEQ17CSuDqnUK2+k9luXQOfXJCJ4I"
<style> crossorigin="anonymous"
html{ />
background-image: url(../../../assets/img/BackgroundPalindrome.jpg); <script
} src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js"
</style> integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo"
</head> crossorigin="anonymous"
<body> ></script>
<div class="enigme"> <script
<div class="titre_pre"> src="https://stackpath.bootstrapcdn.com/bootstrap/5.0.0-alpha1/js/bootstrap.min.js"
<div class="retour"> integrity="sha384-oesi62hOLfzrys4LxRF63OJCXdXDipiYWBnvTl9Y9/TRlw5xlKIEHpNyvvDShgf/"
<a class="material-icons" id="home" href="../Home.html" style="font-size:36px;color:white;">home</a> crossorigin="anonymous"
</div> ></script>
<div class="sign"> <link
<h1> rel="stylesheet"
<span class="fast-flicker">T</span> href="https://fonts.googleapis.com/icon?family=Material+Icons"
<span>ria</span> />
<span class="flicker">n</span> <link rel="stylesheet" href="View/src/CSS/Enigme.css" />
<span>gle</span> </head>
</h1> <body>
</div><br> <div class="container-fluid px-5">
</div> <!-- First Row -->
<h2>Consigne</h2><br> <div class="row py-4">
<p class="enonce"> <div class="col-9 d-flex align-items-center px-0">
Faire une fonction triangle_pascal permettant dafficher le triangle de Pascal jusqu'à un certain nombre n de lignes. Bien sùr n sera passé en argument à la fonction. <a
</p><br> class="material-icons pl-0"
<h2>Exemple</h2><br> id="home"
<p>Entrée : 4</p> href="index.php?action=goToHome"
<p>Sortie : [[1],[1,1],[1,2,1],[1,3,3,1]]</p><br> style="font-size: 40px; color: white"
<h2>Aide</h2><br> >home</a
<p>Le triangle arithmétique de Pascal est le triangle dont la ligne d'indice n (n = 0, 1, 2...) donne les coefficients binomiaux (n) pour p = 0, 1, 2..., n. >
(p) </div>
La construction de ce triangle de Pascal est simple, <button
on part de 1 à la première ligne, par convention c'est la ligne zéro (n = 0) style="background-color: transparent; border: none"
Pour avoir un terme de la ligne suivante, on prend le terme juste au-dessus, et on lui additionne celui qui est juste avant, (0 si il n'y a rien). onclick="displayHelp()"
Mathématiquement, on applique la formule : class="col-3 d-flex align-items-center"
(n+1) = (n) + ( n ) >
( p ) (p) (p-1) <div class="col-10 text-right px-3">
</p> <p style="font-size: 14px; color: white"><b>Besoin d'aide ?</b></p>
</div> </div>
<div class='ace' id='editor'>def TriangleDePascal(n): <div class="col-2 text-right">
if(n==0): <img
return [] src="View/assets/img/Foxy.png"
if(n==1): alt="Logo"
return [[1]] class="rounded-circle moving-fox"
triangle=[[1],[1, 1]] style="border: 1px solid #44fff6; width: 60px; height: 60px"
columns=n />
for line in range(2,n): </div>
triangle.append([1]) </button>
for column in range(1, line):
triangle[line].append(triangle[line - 1][column - 1] + triangle[line - 1][column])
triangle[line].append(1)
return triangle
</div>
<div class='compiler_class'>
<textarea id='console' readonly rows="30" cols="100"></textarea>
<div class="buttons">
<div>
<a onclick="run_init()" class="btn">
<span class="noAnimation">Run</span>
</a>
<a href="#m1-o" onclick="submit()" class="btn">
<span class="noAnimation">Submit</span>
</a>
</div> </div>
<!-- End First Row -->
<!-- Second Row -->
<div class="row">
<!-- First Column -->
<div
class="col-3 rounded p-3"
style="background-color: #222831; min-height: 80vh; height: auto"
>
<h2 class="text-left py-3" style="color: #44fff6; font-weight: 500">
Triangle de Pascal
</h2>
<p>
Écrire une fonction <b style="color: violet;">triangle_pascal</b> permettant dafficher le <b>triangle de Pascal</b>
jusqu'à un certain nombre <b style="color:#44fff6">n</b> de lignes.
Bien sùr <b style="color:#44fff6">n</b> sera passé en argument à la fonction.
La fonction devra renvoyer une <b style="color: yellow;">liste</b> contenant les lignes du triangle de Pascal. (cf l'exemple pour plus de détails).
</p>
<h3 class="text-left pb-3 pt-5" style="color: #44fff6">Rappel</h3>
<p>
Le triangle arithmétique de Pascal est le triangle dont la ligne d'indice n (n = 0, 1, 2...)
donne les coefficients binomiaux (n) pour p = 0, 1, 2..., n.<br/>
La construction de ce triangle de Pascal est simple,
on part de 1 à la première ligne, par convention c'est la ligne zéro (n = 0)
Pour avoir un terme de la ligne suivante, on prend le terme juste au-dessus,
et on lui additionne celui qui est juste avant, (0 si il n'y a rien).
Mathématiquement, on applique la formule :<br/>
(n+1) = (n) + ( n )
</p>
<h3 class="text-left pb-3 pt-5" style="color: #44fff6">Exemple</h3>
<p><b>Entrée</b> : 4</p>
<p><b>Sortie</b> : [[1],[1,1],[1,2,1],[1,3,3,1]]</p><br>
<h3
class="text-left pb-3 pt-5 help"
style="color: #44fff6; display: none"
>
Aide
</h3>
<p style="display: none" class="help">
Il n'y a pas d'aide pour cette énigme.
</p>
</div>
<!-- End First Column -->
<!-- Second Column -->
<div class="col-5 pr-0">
<div class="ace rounded" id="editor">def triangle_pascal(n):
</div> </div>
</div> </div>
<!-- End Second Column -->
<div class="modal-container" id="m1-o" style="--m-background: transparent;"> <!-- Third Column -->
<div class="modal"> <div class="col-4">
<div id="containerResult"> <textarea
<h1 id="result"></h1> id="console"
</div> readonly
<div class="buttons"> style="width: 100%; min-height: 65vh; height: auto"
<div id="top"> class="p-3 rounded"
<a href="#" class="btn"> ></textarea>
<span class="noAnimation">x</span>
</a> <div class="row pt-5 text-center" style="cursor: pointer">
<div class="col-6">
<a onclick="run_init()" class="btn">
<span>Run</span>
</a>
</div>
<div class="col-6">
<button
onclick="submit()"
class="btn"
data-toggle="modal"
data-target="#modal"
>
<span>Submit</span>
</button>
</div>
</div>
</div> </div>
<div id="bottom"> <!-- End Third Column -->
<a href="Hanoi.html" class="btn" id="fleche"> </div>
<span class="noAnimation">Next</span> <!-- End Second Row -->
</a> </div>
<!-- Modal -->
<div
class="modal fade"
id="modal"
tabindex="-1"
role="dialog"
aria-labelledby="exampleModalCenterTitle"
aria-hidden="true"
>
<div class="modal-dialog modal-dialog-centered" role="document">
<div class="modal-content">
<div class="modal-header">
<h2
class="modal-title"
id="exampleModalLongTitle"
style="color: black"
>
Results
</h2>
<button
type="button"
class="close"
data-dismiss="modal"
aria-label="Close"
>
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
<h5 id="result" style="color: black"></h5>
</div>
<div class="modal-footer">
<a href="index.php?action=goToHome" class="btn" style="display: none" id="next">
<span>NEXT</span>
</a>
</div>
</div> </div>
</div> </div>
</div> </div>
</div> <!-- End Modal -->
<script src="https://ajaxorg.github.io/ace-builds/src-noconflict/ace.js" type="text/javascript" charset="utf-8"></script>
<script src="https://raw.githack.com/pythonpad/brython-runner/master/lib/brython-runner.bundle.js" type="text/javascript" charset="utf-8"></script> <script
<script src="../../JS/base.js"></script> src="https://ajaxorg.github.io/ace-builds/src-noconflict/ace.js"
<script src="../../JS/TrianglePascal.js"></script> type="text/javascript"
</body> charset="utf-8"
></script>
<script
src="https://raw.githack.com/pythonpad/brython-runner/master/lib/brython-runner.bundle.js"
type="text/javascript"
charset="utf-8"
></script>
<script src="View/src/JS/base.js"></script>
<script src="View/src/JS/palindrome.js"></script>
</body>
</html> </html>

@ -71,11 +71,12 @@
</h2> </h2>
<p> <p>
Écrire une fonction <b style="color: violet;">estPalindrome</b> qui prend en argument un Écrire une fonction <b style="color: violet;">estPalindrome</b> qui prend en argument un
entier et qui renvoie True si cest un palindrome et False sinon. <b style="color:#44fff6">entier</b> et
qui renvoie <b style="color: green;">True</b> si cest un palindrome et <b style="color: red;">False</b> sinon.
</p> </p>
<h3 class="text-left pb-3 pt-5" style="color: #44fff6">Rappel</h3> <h3 class="text-left pb-3 pt-5" style="color: #44fff6">Rappel</h3>
<p> <p>
Un <b style="color: violet;">palindrome</b> est un nombre qui reste le même si on le lit de gauche Un <b>palindrome</b> est un nombre qui reste le même si on le lit de gauche
à droite ou de droite à gauche. à droite ou de droite à gauche.
</p> </p>
<h3 class="text-left pb-3 pt-5" style="color: #44fff6">Exemple</h3> <h3 class="text-left pb-3 pt-5" style="color: #44fff6">Exemple</h3>

@ -39,7 +39,7 @@
class="m-1 text-uppercase" class="m-1 text-uppercase"
style="color: #44fff6; font-weight: bold; font-size: 22px" style="color: #44fff6; font-weight: bold; font-size: 22px"
> >
1/12 1/10
</h5> </h5>
</div> </div>
<div class="nav-link"> <div class="nav-link">
@ -84,7 +84,6 @@
<p> <p>
Appuie sur le button <b style="color: red;">Run</b> pour executer ton code. Appuie sur le button <b style="color: red;">Run</b> pour executer ton code.
</p> </p>
<!-- <code>print("Hello World !")</code> -->
</section> </section>
</div> </div>
<div class="col-2 align-self-center"> <div class="col-2 align-self-center">

@ -39,7 +39,7 @@
class="m-1 text-uppercase" class="m-1 text-uppercase"
style="color: #44fff6; font-weight: bold; font-size: 22px" style="color: #44fff6; font-weight: bold; font-size: 22px"
> >
10/12 10/10
</h5> </h5>
</div> </div>
<div class="nav-link"> <div class="nav-link">
@ -83,6 +83,25 @@
<p> <p>
Tant que la liste ne contient pas 5 éléments, on ajoute un élément. Tant que la liste ne contient pas 5 éléments, on ajoute un élément.
</p> </p>
<p>
Bien je te propose de passer ton dernier test de qualification.
Tu dois coder la fonction <b style="color: violet;">tri</b>.
Cette fonction prend en paramètre deux <b style="color: yellow;">chaine de caractère</b>,
remet les lettres dans l'orde et
retourne la <b style="color: yellow;">chaine de caractère</b>.
Voici un exemple pour que tu comprennes mieux :
</p>
<code style="font-size: 18px">
def tri(a,b) :<br/>
&nbsp;&nbsp;# ton code ici<br/><br/>
a = "Hlowrd"<br/>
b = "el ol"<br/>
print(trie(a,b)) -> retourne "Hello World"
</code>
<br></br>
<p>
La fonction <b style="color: violet;">tri</b> prend tour a tour les lettres de a et b.
</p>
</section> </section>
</div> </div>
<div class="col-2 align-self-center"> <div class="col-2 align-self-center">
@ -102,7 +121,8 @@
<div class="row mt-5"> <div class="row mt-5">
<!-- Editor --> <!-- Editor -->
<div class="col-8"> <div class="col-8">
<div class="ace rounded ace-1" id="editor" style="min-height: 40vh"></div> <div class="ace rounded ace-1" id="editor" style="min-height: 40vh">def tri(a,b):
</div>
</div> </div>
<!-- End Editor --> <!-- End Editor -->
@ -196,5 +216,6 @@
charset="utf-8" charset="utf-8"
></script> ></script>
<script src="View/src/JS/base.js"></script> <script src="View/src/JS/base.js"></script>
<script src="View/src/JS/String.js"></script>
</body> </body>
</html> </html>

@ -39,7 +39,7 @@
class="m-1 text-uppercase" class="m-1 text-uppercase"
style="color: #44fff6; font-weight: bold; font-size: 22px" style="color: #44fff6; font-weight: bold; font-size: 22px"
> >
2/12 2/10
</h5> </h5>
</div> </div>
<div class="nav-link"> <div class="nav-link">

@ -39,7 +39,7 @@
class="m-1 text-uppercase" class="m-1 text-uppercase"
style="color: #44fff6; font-weight: bold; font-size: 22px" style="color: #44fff6; font-weight: bold; font-size: 22px"
> >
3/12 3/10
</h5> </h5>
</div> </div>
<div class="nav-link"> <div class="nav-link">

@ -39,7 +39,7 @@
class="m-1 text-uppercase" class="m-1 text-uppercase"
style="color: #44fff6; font-weight: bold; font-size: 22px" style="color: #44fff6; font-weight: bold; font-size: 22px"
> >
4/12 4/10
</h5> </h5>
</div> </div>
<div class="nav-link"> <div class="nav-link">

@ -39,7 +39,7 @@
class="m-1 text-uppercase" class="m-1 text-uppercase"
style="color: #44fff6; font-weight: bold; font-size: 22px" style="color: #44fff6; font-weight: bold; font-size: 22px"
> >
5/12 5/10
</h5> </h5>
</div> </div>
<div class="nav-link"> <div class="nav-link">

@ -39,7 +39,7 @@
class="m-1 text-uppercase" class="m-1 text-uppercase"
style="color: #44fff6; font-weight: bold; font-size: 22px" style="color: #44fff6; font-weight: bold; font-size: 22px"
> >
6/12 6/10
</h5> </h5>
</div> </div>
<div class="nav-link"> <div class="nav-link">

@ -39,7 +39,7 @@
class="m-1 text-uppercase" class="m-1 text-uppercase"
style="color: #44fff6; font-weight: bold; font-size: 22px" style="color: #44fff6; font-weight: bold; font-size: 22px"
> >
7/12 7/10
</h5> </h5>
</div> </div>
<div class="nav-link"> <div class="nav-link">

@ -39,7 +39,7 @@
class="m-1 text-uppercase" class="m-1 text-uppercase"
style="color: #44fff6; font-weight: bold; font-size: 22px" style="color: #44fff6; font-weight: bold; font-size: 22px"
> >
8/12 8/10
</h5> </h5>
</div> </div>
<div class="nav-link"> <div class="nav-link">

@ -39,7 +39,7 @@
class="m-1 text-uppercase" class="m-1 text-uppercase"
style="color: #44fff6; font-weight: bold; font-size: 22px" style="color: #44fff6; font-weight: bold; font-size: 22px"
> >
9/12 9/10
</h5> </h5>
</div> </div>
<div class="nav-link"> <div class="nav-link">

Loading…
Cancel
Save