init
This commit is contained in:
71
html/tasks/chapter_5/task12_encryption/script.js
Executable file
71
html/tasks/chapter_5/task12_encryption/script.js
Executable file
@@ -0,0 +1,71 @@
|
||||
var encForm = document.getElementById("encrypt");
|
||||
var emess = document.getElementById("emess");
|
||||
var eciph = document.getElementById("enum");
|
||||
var etext = document.getElementById("etext");
|
||||
encForm.onsubmit=function(evt){
|
||||
evt.preventDefault();
|
||||
etext.innerHTML = encrypt(emess.value, parseInt(eciph.value));
|
||||
}
|
||||
|
||||
var decForm = document.getElementById("decrypt");
|
||||
var dmess = document.getElementById("dmess");
|
||||
var dciph = document.getElementById("dnum");
|
||||
var dtext = document.getElementById("dtext");
|
||||
decForm.onsubmit=function(evt){
|
||||
evt.preventDefault();
|
||||
dtext.innerHTML = decrypt(dmess.value, parseInt(dciph.value));
|
||||
}
|
||||
|
||||
function mod(x,n){
|
||||
return ((x%n)+n)%n;
|
||||
}
|
||||
|
||||
|
||||
function encrypt(mess,number){
|
||||
messArray=mess.split('');
|
||||
result=[];
|
||||
|
||||
for (i in messArray){
|
||||
x=messArray[i].charCodeAt(0);
|
||||
|
||||
if (x>64 && x<91){
|
||||
x-=64;
|
||||
x+=number;
|
||||
x=mod(x,26);
|
||||
x+=64;
|
||||
} else if (x>96 && x<123){
|
||||
x-=96;
|
||||
x+=number;
|
||||
x=mod(x,26);
|
||||
x+=96;
|
||||
}
|
||||
result.push(String.fromCharCode(x));
|
||||
}
|
||||
result = result.join("");
|
||||
return result;
|
||||
|
||||
}
|
||||
|
||||
function decrypt(mess,number){
|
||||
messArray=mess.split('');
|
||||
result=[];
|
||||
|
||||
for (i in messArray){
|
||||
x=messArray[i].charCodeAt(0);
|
||||
|
||||
if (x>64 && x<91){
|
||||
x-=64;
|
||||
x-=number;
|
||||
x=mod(x,26);
|
||||
x+=64;
|
||||
} else if (x>96 && x<123){
|
||||
x-=96;
|
||||
x-=number;
|
||||
x=mod(x,26);
|
||||
x+=96;
|
||||
}
|
||||
result.push(String.fromCharCode(x));
|
||||
}
|
||||
result = result.join("");
|
||||
return result;
|
||||
}
|
||||
Reference in New Issue
Block a user