凯撒密码加密算法 (8 分)
凯撒密码加密算法 (8 分)
编写一个凯撒密码加密程序,接收用户输入的文本和密钥k,对明文中的字母a-z和字母A-Z替换为其后第k个字母。
输入格式:
接收两行输入,第一行为待加密的明文,第二行为密钥k。
输出格式:
输出加密后的密文。
输入样例:
在这里给出一组输入。例如:
Hello World!
3
输出样例:
在这里给出相应的输出。例如:
Khoor Zruog!
方法一
s1=list('abcdefghijklmnopqrstuvwxyz')
s2=list('ABCDEFGHIJKLMNOPQRSTUVWXYZ')
s=list(input())
n=int(input())
for i in range(len(s)):
if s[i] in s1:
s[i]=s1[(s1.index(s[i])+n)%26]
elif s[i] in s2:
s[i]=s2[(s2.index(s[i])+n)%26]
print(''.join(s))
方法二
import string
def kaisa(s,k):
lower=string.ascii_lowercase
upper=string.ascii_uppercase
before=string.ascii_letters
after=lower[k:]+lower[:k]+upper[k:]+upper[:k]
table=''.maketrans(before,after)
return s.translate(table)
n=input()
k=int(input())
print(kaisa(n,k))
凯撒密码加密算法 (8 分)相关推荐
- playfair密码和凯撒密码加密算法的Java实现
文章目录 一.实现广义的凯撒密码加密算法 二.实现广义的playfair密码的加密算法 总结 加密原理: 一.实现广义的凯撒密码加密算法 //实现广义的凯撒密码//凯撒密码的加密String plai ...
- 凯撒密码加密算法python_CTF中会用到的密码学基础(节选)
Hello,大家好,好耐冇见,我系初音 今天我们来学习一下关于CTF中会用到的部分密码学基础(很简单的那部分) 01第一节.凯撒密码 在密码学中,凯撒密码(Caesar cipher),或称凯撒加密. ...
- 凯撒密码加密算法python_Python密码学入门:凯撒密码
1 什么是密码学 自古以来,间谍.士兵.黑客.海盗.商人等人,大多依靠密码学来确保他们的秘密不会人尽皆知.密码学是一门使用秘密编码的学科.想要明白密码长什么样,看一看下面两段文本. nyr N.vNw ...
- jmu-python-凯撒密码加密算法_7-30 jmu-python-凯撒密码加密算法 (10 分)
编写一个凯撒密码加密程序,接收用户输入的文本和密钥k,对明文中的字母a-z和字母A-Z替换为其后第k个字母. 输入格式: 接收两行输入,第一行为待加密的明文,第二行为密钥k. 输出格式: 输出加密后的 ...
- php实现凯撒密码加密算法,Python实现的凯撒密码算法示例
本文实例讲述了Python实现的凯撒密码算法.分享给大家供大家参考,具体如下: 一 介绍 凯撒密码是一种非常古老的加密方法,相传当年凯撒大地行军打仗时为了保证自己的命令不被敌军知道,就使用这种特殊的方 ...
- php实现凯撒密码加密算法,Golang 实现凯撒密码
一.凯撒密码加密代码思路 基本思路: 设置明文 和 位移步长(秘钥) 将明文转成小写,准备 明文字节切片 与 密文切片 循环将每个明文字符 按照 位移步长 做位移,存入密文切片 返回密文 导入包 im ...
- 凯撒密码加密算法python_Python最新暴力破解WiFi,攻破所有密码限制,最强破解!...
生成密码本 对于这个密码本就是我们常用的密码,一般是有数字.字母和符号组成.而现在呢?我们就用Python生成一个简单的密码本,这里用到的思路主要是穷举法.这里用到的库是itertools,没有的可以 ...
- 7-137 凯撒密码 (20 分)
7-137 凯撒密码 (20 分) 为了防止信息被别人轻易窃取,需要把电码明文通过加密方式变换成为密文.输入一个以回车符为结束标志的字符串(少于80个字符),再输入一个整数offset,用凯撒密码将其 ...
- 7-14 凯撒密码 (10 分)
7-14 凯撒密码 (10 分) #include <iostream> #include <algorithm> #include <cstdio> using ...
最新文章
- 教你从0到1搭建秒杀系统-防超卖
- oracle v$sql last_load_time,Oracle 等待事件V$视图
- SCCM 2012 SP1系列(九)配置补丁更新-2
- qt连接mysql创建表_Qt编译mysql以及创建表后进行导入操作
- 数据库开发——MySQL——数据类型——非数值类型
- mysql怎样查询表的信息!
- pthread 简要使用指南
- TCP/IP 和 TCP/IP的 三/四次握手
- Javascript实现页面跳转传值示例Demo
- C语言遇空字符缩进,c语言代码缩进和空白
- 若依编辑和删除操作按钮不可用怎么办?
- 隐藏元素 mayaa
- Apache RewriteCond on HTTP_COOKIE
- 【51单片机】利用烧录软件生成延时函数 入门学习
- 开源cnc软件_带有开源软件的CNC铣削
- Idea配置svn出现错误的解决方案
- IOS 出现不支持的 URL
- Linux TCP之sack(二)
- mysql在dos界面修改密码
- apache 在windows下无法启动的一个错误
热门文章
- java 加载资源_在Java中加载资源的首选方式
- antd 能自适应吗_Antd表格滚动 宽度自适应 不换行的实例
- 为什么自己编写的页面总是在那里抖动_SEO排名,为什么旧页面比新内容排名高?...
- react-native中的动画
- 零基础入门Python3-列表list详解
- Python(37)_字典嵌套
- 【转】Java魔法堂:String.format详解
- POJ3628:Bookshelf 2【01背包】
- 微软2013年笔试题详解及深入
- IP 层收发报文简要剖析4--ip 报文发送