2019-12-04 某个公司采用公用电话传递数据,数据是四位的整数, //在传递过程中是加密的,加密规则如下: // 每位数字都加上5,然后用除以10的余数代替该数字 //再将第一...

function getArr() {

var arr = []; //创建了一个空的新数组

var rand = 0; //用于保存随机数组

for(var i = 0; i < 4; i++) {

rand = parseInt(Math.random() * 100 + 1); //生成4个1-100之间的随机数

arr[i] = rand; //对应arr的每一个下标赋值一个随机数。

}

return arr; //把这个随机数组return出去,让外部可以用到这个数组

}

var arr = getArr();

console.log("这是随机数组" + arr);

//生成密文的函数

function cipherText(arr){//arr为传入的原文

var newArr = [];//设置一个新的数组来放加密后的密文

var num = 0;//var一个数用来保存遍历数组后经历了加五取余后的结果

for(i = 0;i<arr.length;i++){//遍历arr数组

num = (arr[i]+5)%10;//对数组中的元素进行加五取余

newArr.push(num);//将处理后的数传入新的数组

}

console.log("这是新数组" + newArr);

var temp = 0;

var temp2 = 0;//设置两个空值用来交换数组元素的位置

newArr.forEach(function(ele,index,arry){

if(index == 0){//用来交换下标为0和3(即第一和第四个)元素的位置

temp = newArr[index];

newArr[index] = newArr[index+3];

newArr[index+3] = temp;

}

if(index == 1){//同理

temp2 = newArr[index];

newArr[index] = newArr[index+1];

newArr[index+1] = temp2;

}

});

console.log("这是交换位置后的数组" + newArr);

return newArr;

//return arr;

}

document.write(cipherText(arr))//输出密文

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容