Incoporation de tout les enigmes solo

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

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

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

@ -91,6 +91,26 @@ class UserModel
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()
{
@ -153,7 +173,6 @@ class UserModel
//trigger_event('add_to_queue',$userGroup);
}
<<<<<<< HEAD
public function AddUserToQueueEvent(){
$userGroup=$this->utilisateur_gateway->findUsersInQueue();
if($userGroup.count()>=4)
@ -162,8 +181,6 @@ class UserModel
}
}
=======
>>>>>>> 146a4b62fc5bc2340e9c08c07650a6efb799c3fb
public function logout()
{
$_SESSION['role'] = 'visitor';

Binary file not shown.

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

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

@ -70,17 +70,18 @@
Code Cesar
</h2>
<p>
Écrire une fonction <b style="color : violet">Decrypt</b> qui prend en argument un message et une clé
et qui retourne le message décrypté avec le code <b style="color: violet;">César</b>.(les espace ne seront pas encodé.)
Écrire une fonction <b style="color : violet">Decrypt</b> qui prend en argument
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>
<h3 class="text-left pb-3 pt-5" style="color: #44fff6">Rappel</h3>
<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>Par exemple A avec une clé 2 devient C.
</p>
<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>
<h3
class="text-left pb-3 pt-5 help"

@ -70,17 +70,18 @@
Code Cesar
</h2>
<p>
Écrire une fonction <b style="color : violet">Encrypt</b> qui prend en argument un message et une clé
et qui retourne le message crypté avec le code <b style="color: violet;">César</b>.(les espace ne seront pas encodé.)
Écrire une fonction <b style="color : violet">Encrypt</b> qui prend en argument
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>
<h3 class="text-left pb-3 pt-5" style="color: #44fff6">Rappel</h3>
<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>Par exemple A avec une clé 2 devient C.
</p>
<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>
<h3
class="text-left pb-3 pt-5 help"

@ -70,13 +70,15 @@
Chouette
</h2>
<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.
</br>La valeur peut aller de 3 à 18 .
Écrire une fonction <b style="color: violet;">chouette</b> qui, pour une <b style="color: #44fff6;">valeur</b> donnée,
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.
</p>
<h3 class="text-left pb-3 pt-5" style="color: #44fff6">Exemple</h3>
<p>Entrée : 7</p>
<p>Sortie : [[1,1,5],[1,2,4],[1,3,3],[2,2,3]]</p>
<p><b>Entrée</b> : 7</p>
<p><b>Sortie</b> : [[1,1,5],[1,2,4],[1,3,3],[2,2,3]]</p>
<h3
class="text-left pb-3 pt-5 help"
style="color: #44fff6; display: none"

@ -70,16 +70,16 @@
Chuck Norris
</h2>
<p>
Coder un fonction <b style="color: violet;">binaire2unaire</b> qui prend en argument un nombre binaire
et le code via le codage Chucknorris.
Coder un fonction <b style="color: violet;">binaire2unaire</b> qui prend en argument un <b style="color: #44fff6;">nombre binaire</b>
et qui le retourne le <b style="color: yellow;">nombre</b> codé via le codage <b>Chuck Norris</b>.
</p>
<h3 class="text-left pb-3 pt-5" style="color: #44fff6">Rappel</h3>
<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
</p>
<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>
<h3
class="text-left pb-3 pt-5 help"
@ -164,7 +164,7 @@
<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">
<a href="index.php?action=goToHanoi" class="btn" style="display: none" id="next">
<span>NEXT</span>
</a>
</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>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Palindrome</title>
<link rel="stylesheet" href="../../CSS/Enigme.css"/>
<link rel="stylesheet" href="../../CSS/Home.css">
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
<style>
html{
background-image: url(../../../assets/img/Background5.jpg);
}
</style>
</head>
<body>
<div class="enigme">
<div class="titre_pre">
<div class="retour">
<a class="material-icons" id="home" href="../Home.html" style="font-size:36px;color:white;">home</a>
</div>
<div class="sign">
<h1>
<span class="fast-flicker">T</span>
<span>our </span>
<span class="flicker">&nbsp;H</span>
<span>anoi</span>
</h1>
</div><br>
</div>
<h2>Consigne</h2><br>
<p class="enonce">
Faire une fonction permettant de résoudre le problème des tours dhanoi peu importe le nombre d'entrées dans la fonction.
</p><br>
<h2>Rappel</h2><br>
<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.
</p><br>
<h2>Exemple</h2><br>
<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>
<h2>Aide</h2><br>
<p>Une fonction récursive est une fonction qui fait appelle à elle même</p>
</div>
<div class='ace' id='editor'>def hanoi(nb_disks,start, middle, end):
l=[]
hanoi_rec(l,nb_disks,start, middle, end)
return l
def hanoi_rec(l,nb_disks, start, middle, end):
if nb_disks == 1:
return l.append([start,end])
else:
hanoi_rec(l,nb_disks - 1, start, end, middle)
l.append([start,end])
hanoi_rec(l,nb_disks - 1, middle, start, end)</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>
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Hanoi</title>
<link
rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/5.0.0-alpha1/css/bootstrap.min.css"
integrity="sha384-r4NyP46KrjDleawBgD5tp8Y7UzmLA05oM1iAEQ17CSuDqnUK2+k9luXQOfXJCJ4I"
crossorigin="anonymous"
/>
<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>
<link
rel="stylesheet"
href="https://fonts.googleapis.com/icon?family=Material+Icons"
/>
<link rel="stylesheet" href="View/src/CSS/Enigme.css" />
</head>
<body>
<div class="container-fluid px-5">
<!-- First Row -->
<div class="row py-4">
<div class="col-9 d-flex align-items-center px-0">
<a
class="material-icons pl-0"
id="home"
href="index.php?action=goToHome"
style="font-size: 40px; color: white"
>home</a
>
</div>
<button
style="background-color: transparent; border: none"
onclick="displayHelp()"
class="col-3 d-flex align-items-center"
>
<div class="col-10 text-right px-3">
<p style="font-size: 14px; color: white"><b>Besoin d'aide ?</b></p>
</div>
<div class="col-2 text-right">
<img
src="View/assets/img/Foxy.png"
alt="Logo"
class="rounded-circle moving-fox"
style="border: 1px solid #44fff6; width: 60px; height: 60px"
/>
</div>
</button>
</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>
<!-- End Second Column -->
<div class="modal-container" id="m1-o" style="--m-background: transparent;">
<div class="modal">
<div id="containerResult">
<h1 id="result"></h1>
</div>
<div class="buttons">
<div id="top">
<a href="#" class="btn">
<span class="noAnimation">x</span>
</a>
<!-- Third Column -->
<div class="col-4">
<textarea
id="console"
readonly
style="width: 100%; min-height: 65vh; height: auto"
class="p-3 rounded"
></textarea>
<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 id="bottom">
<a href="../Home.html" class="btn" id="fleche">
<span class="noAnimation">Next</span>
</a>
<!-- End Third Column -->
</div>
<!-- End Second Row -->
</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>
<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/Hanoi.js"></script>
</body>
<!-- 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 src="View/src/JS/base.js"></script>
<script src="View/src/JS/Hanoi.js"></script>
</body>
</html>

@ -1,102 +1,197 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Palindrome</title>
<link rel="stylesheet" href="../../CSS/Enigme.css"/>
<link rel="stylesheet" href="../../CSS/Home.css">
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
<style>
html{
background-image: url(../../../assets/img/BackgroundPalindrome.jpg);
}
</style>
</head>
<body>
<div class="enigme">
<div class="titre_pre">
<div class="retour">
<a class="material-icons" id="home" href="../Home.html" style="font-size:36px;color:white;">home</a>
</div>
<div class="sign">
<h1>
<span class="fast-flicker">T</span>
<span>ria</span>
<span class="flicker">n</span>
<span>gle</span>
</h1>
</div><br>
</div>
<h2>Consigne</h2><br>
<p class="enonce">
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.
</p><br>
<h2>Exemple</h2><br>
<p>Entrée : 4</p>
<p>Sortie : [[1],[1,1],[1,2,1],[1,3,3,1]]</p><br>
<h2>Aide</h2><br>
<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)
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 :
(n+1) = (n) + ( n )
( p ) (p) (p-1)
</p>
</div>
<div class='ace' id='editor'>def TriangleDePascal(n):
if(n==0):
return []
if(n==1):
return [[1]]
triangle=[[1],[1, 1]]
columns=n
for line in range(2,n):
triangle.append([1])
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>
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Triangle de Pascal</title>
<link
rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/5.0.0-alpha1/css/bootstrap.min.css"
integrity="sha384-r4NyP46KrjDleawBgD5tp8Y7UzmLA05oM1iAEQ17CSuDqnUK2+k9luXQOfXJCJ4I"
crossorigin="anonymous"
/>
<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>
<link
rel="stylesheet"
href="https://fonts.googleapis.com/icon?family=Material+Icons"
/>
<link rel="stylesheet" href="View/src/CSS/Enigme.css" />
</head>
<body>
<div class="container-fluid px-5">
<!-- First Row -->
<div class="row py-4">
<div class="col-9 d-flex align-items-center px-0">
<a
class="material-icons pl-0"
id="home"
href="index.php?action=goToHome"
style="font-size: 40px; color: white"
>home</a
>
</div>
<button
style="background-color: transparent; border: none"
onclick="displayHelp()"
class="col-3 d-flex align-items-center"
>
<div class="col-10 text-right px-3">
<p style="font-size: 14px; color: white"><b>Besoin d'aide ?</b></p>
</div>
<div class="col-2 text-right">
<img
src="View/assets/img/Foxy.png"
alt="Logo"
class="rounded-circle moving-fox"
style="border: 1px solid #44fff6; width: 60px; height: 60px"
/>
</div>
</button>
</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>
<!-- End Second Column -->
<div class="modal-container" id="m1-o" style="--m-background: transparent;">
<div class="modal">
<div id="containerResult">
<h1 id="result"></h1>
</div>
<div class="buttons">
<div id="top">
<a href="#" class="btn">
<span class="noAnimation">x</span>
</a>
<!-- Third Column -->
<div class="col-4">
<textarea
id="console"
readonly
style="width: 100%; min-height: 65vh; height: auto"
class="p-3 rounded"
></textarea>
<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 id="bottom">
<a href="Hanoi.html" class="btn" id="fleche">
<span class="noAnimation">Next</span>
</a>
<!-- End Third Column -->
</div>
<!-- End Second Row -->
</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>
<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/TrianglePascal.js"></script>
</body>
<!-- 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 src="View/src/JS/base.js"></script>
<script src="View/src/JS/palindrome.js"></script>
</body>
</html>

@ -71,11 +71,12 @@
</h2>
<p>
É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>
<h3 class="text-left pb-3 pt-5" style="color: #44fff6">Rappel</h3>
<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.
</p>
<h3 class="text-left pb-3 pt-5" style="color: #44fff6">Exemple</h3>

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

@ -39,7 +39,7 @@
class="m-1 text-uppercase"
style="color: #44fff6; font-weight: bold; font-size: 22px"
>
10/12
10/10
</h5>
</div>
<div class="nav-link">
@ -83,6 +83,25 @@
<p>
Tant que la liste ne contient pas 5 éléments, on ajoute un élément.
</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>
</div>
<div class="col-2 align-self-center">
@ -102,7 +121,8 @@
<div class="row mt-5">
<!-- Editor -->
<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>
<!-- End Editor -->
@ -196,5 +216,6 @@
charset="utf-8"
></script>
<script src="View/src/JS/base.js"></script>
<script src="View/src/JS/String.js"></script>
</body>
</html>

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

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

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

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

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

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

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

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

Loading…
Cancel
Save