diff --git a/WEB/Config/Config.php b/WEB/Config/Config.php index 3ce8574e..a19620de 100644 --- a/WEB/Config/Config.php +++ b/WEB/Config/Config.php @@ -30,6 +30,7 @@ $vues['next'] = 'View/src/pages/FirstTests/FirstTest'; // Enigme $vues['enigme'] = 'View/src/pages/Enigme/Palindrome.html'; $vues['chouette'] = 'View/src/pages/Enigme/Chouette.html'; +$vues['cesarEncrypt'] = 'View/src/pages/Enigme/CesarEncrypt.html'; //Error $vues['erreur'] = 'View/src/pages/Erreur.php'; diff --git a/WEB/Controller/UserController.php b/WEB/Controller/UserController.php index 7331bc7c..8b040bc7 100644 --- a/WEB/Controller/UserController.php +++ b/WEB/Controller/UserController.php @@ -29,6 +29,9 @@ class UserController case "goToChouette" : $model->goToChouette(); break; + case "goToCesarEncrypt": + $model->goToCesarEncrypt(); + break; case "goToQueue": $model->goToQueue(); break; diff --git a/WEB/Model/UserModel.php b/WEB/Model/UserModel.php index 1d91e25b..ed20225b 100644 --- a/WEB/Model/UserModel.php +++ b/WEB/Model/UserModel.php @@ -61,6 +61,16 @@ class UserModel require($rep . $vues['erreur']); } } + public function goToCesarEncrypt() + { + global $rep, $vues, $error; + try { + require($rep . $vues['cesarEncrypt']); + } catch (Exception $e) { + $error = "404"; + require($rep . $vues['erreur']); + } + } public function goToTest() { diff --git a/WEB/Model/scripted.db b/WEB/Model/scripted.db index c43c9bfd..5cfd9cb7 100644 Binary files a/WEB/Model/scripted.db and b/WEB/Model/scripted.db differ diff --git a/WEB/View/src/JS/chouette.js b/WEB/View/src/JS/chouette.js index ee951e5b..a023c69f 100644 --- a/WEB/View/src/JS/chouette.js +++ b/WEB/View/src/JS/chouette.js @@ -4,23 +4,23 @@ async function submit(){ var test = editor.getValue()+`\n import random as r def chouetteVerif(valeur): - res=list() - for i in range(1, 7): - for j in range(i, 7): - for k in range(j, 7): - if (i+j+k) == valeur: - res.append([i, j, k]) - return res + res=list() + for i in range(1, 7): + for j in range(i, 7): + for k in range(j, 7): + if (i+j+k) == valeur: + res.append([i, j, k]) + return res def test_chouette(n): chouette(1) - listTest=[] - for i in range(0,n): + listTest=[] + for i in range(0,n): listTest.append(r.randint(3,18)) - for i in listTest: - if(chouette(i)!=chouetteVerif(i)): - return False - return True + for i in listTest: + if(chouette(i)!=chouetteVerif(i)): + return False + return True print(test_chouette(5)) `; diff --git a/WEB/View/src/pages/Enigme/CesarEncrypt copy.html b/WEB/View/src/pages/Enigme/CesarEncrypt copy.html new file mode 100644 index 00000000..d943e819 --- /dev/null +++ b/WEB/View/src/pages/Enigme/CesarEncrypt copy.html @@ -0,0 +1,102 @@ + + + + + + + Code César + + + + + + +
+
+
+ home +
+
+

+ c + es + a + r +

+

+
+

Consigne


+

+ Écrire une fonction Encrypt qui prend en argument un message et une clé et qui retourne le message crypté avec le code César.(les espace ne seront pas encodé.) +



+

Rappel


+

Le code César (ou chiffre de César ) est un chiffrement par substitution, +
où chaque lettre est remplacée par une autre lettre se situant un peu plus loin dans l'alphabet . +
Par exemple A avec une clé 2 devient C. +



+

Exemple


+

Entrée :      Sortie :

+

'fbehu',3      cyber



+

Aide


+

+ La fonction ord(char) de python permet de retourner l’Unicode (standard d’encodage de caractères) d'un caractère. Par exemple, ord('a') retourné '97' et ord('b’) retourne 98. +

+
+
def Encrypt(text, key): + result = "" + for i in range(len(text)): + char = text[i] + if(char==" "): + result+=" " + elif (char.isupper()): + result += chr((ord(char) + key-65) % 26 + 65) + else: + result += chr((ord(char) + key - 97) % 26 + 97) + return result
+
+ +
+
+ + Run + + + Submit + +
+
+
+ + + + + + + + + + + + diff --git a/WEB/View/src/pages/Enigme/CesarEncrypt.html b/WEB/View/src/pages/Enigme/CesarEncrypt.html index d943e819..8f7f7278 100644 --- a/WEB/View/src/pages/Enigme/CesarEncrypt.html +++ b/WEB/View/src/pages/Enigme/CesarEncrypt.html @@ -1,102 +1,191 @@ - - - - - - Code César - - - - - - -
-
-
- home -
-
-

- c - es - a - r -

-

-
-

Consigne


-

- Écrire une fonction Encrypt qui prend en argument un message et une clé et qui retourne le message crypté avec le code César.(les espace ne seront pas encodé.) -



-

Rappel


-

Le code César (ou chiffre de César ) est un chiffrement par substitution, -
où chaque lettre est remplacée par une autre lettre se situant un peu plus loin dans l'alphabet . -
Par exemple A avec une clé 2 devient C. -



-

Exemple


-

Entrée :      Sortie :

-

'fbehu',3      cyber



-

Aide


-

- La fonction ord(char) de python permet de retourner l’Unicode (standard d’encodage de caractères) d'un caractère. Par exemple, ord('a') retourné '97' et ord('b’) retourne 98. -

-
-
def Encrypt(text, key): - result = "" - for i in range(len(text)): - char = text[i] - if(char==" "): - result+=" " - elif (char.isupper()): - result += chr((ord(char) + key-65) % 26 + 65) - else: - result += chr((ord(char) + key - 97) % 26 + 97) - return result
-
- -
-
- - Run - - - Submit - + + + + + Code Cesar + + + + + + + +
+ +
+
+ home +
+
+ + + +
+ +
+

+ Code Cesar +

+

+ Écrire une fonction Encrypt qui prend en argument un message et une clé + et qui retourne le message crypté avec le code César.(les espace ne seront pas encodé.) +

+

Rappel

+

+ Le code César (ou chiffre de César ) est un chiffrement par substitution, +
où chaque lettre est remplacée par une autre lettre se situant un peu plus loin dans l'alphabet . +
Par exemple A avec une clé 2 devient C. +

+

Exemple

+

Entrée :      Sortie :

+

'fbehu',3      cyber



+ + +
+ + + +
+
def estPalindrome(var):
-
+
+ -