用Lisp编写密码解码函数

1、一个密码谜题是一种需要解谜者解码消息的谜题类型。代码被称为替换密码,其原理是在整个消息中用一个字母替换另一个字母。现在给出一个密码谜题(以字符串列表形式表示,所有字母为小写),要求编写一系列函数来辅助解决该密码谜题,具体函数及功能如下:初始化哈希表、进行替换、撤销替换、清除哈希表、解密字符串、显示密码谜题行和解密后的文本。

  1. 初始化全局变量 *ENCIPHER_TABLE* *DECIPHER_TABLE*

lisp (setf *encipher_table* (make-hash-table)) (setf *decipher_table* (make-hash-table))

  1. 编写函数 MAKE_SUBSTITUTION

lisp (defun make-substitution (code clear) (setf (gethash clear *encipher_table*) code) (setf (gethash code *decipher_table*) clear))

  1. 编写函数 UNDO_SUBSTITUTION

lisp (defun undo-substitution (code clear) (setf (gethash clear *encipher_table*) nil) (setf (gethash code *decipher_table*) nil))

  1. 编写函数 CLEAR

lisp (defun clear () (clrhash *encipher_table*) (clrhash *decipher_table*

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值