You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
41 lines
1.0 KiB
41 lines
1.0 KiB
//~ Function that test the user code
|
|
|
|
async function submit(){
|
|
var test = editor.getValue()+`\n
|
|
def DecryptVerif(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
|
|
|
|
import random as r
|
|
def testDecrypte(x):
|
|
Decrypt("",1)
|
|
if(Decrypt("Jgnnq yqtnf",2)!="Hello world"):
|
|
return False
|
|
if(Decrypt("Blarycnm",9)!="Scripted"):
|
|
return False
|
|
for i in range(x):
|
|
l=""
|
|
cle=r.randint(1,26)
|
|
for i in range(r.randint(1,10)):
|
|
l+=chr(r.randint(97,122))
|
|
if(Decrypt(l,cle)!=DecryptVerif(l,cle)):
|
|
return False
|
|
return True
|
|
|
|
print(testDecrypte(5))
|
|
`;
|
|
exec("print ('True')", "code");
|
|
exec(test, "solution");
|
|
result.innerHTML = "Test en cours...";
|
|
await new Promise(r => setTimeout(r, 1500));
|
|
check();
|
|
}
|
|
|