凯撒密码加密算法 (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 分)相关推荐

  1. playfair密码和凯撒密码加密算法的Java实现

    文章目录 一.实现广义的凯撒密码加密算法 二.实现广义的playfair密码的加密算法 总结 加密原理: 一.实现广义的凯撒密码加密算法 //实现广义的凯撒密码//凯撒密码的加密String plai ...

  2. 凯撒密码加密算法python_CTF中会用到的密码学基础(节选)

    Hello,大家好,好耐冇见,我系初音 今天我们来学习一下关于CTF中会用到的部分密码学基础(很简单的那部分) 01第一节.凯撒密码 在密码学中,凯撒密码(Caesar cipher),或称凯撒加密. ...

  3. 凯撒密码加密算法python_Python密码学入门:凯撒密码

    1 什么是密码学 自古以来,间谍.士兵.黑客.海盗.商人等人,大多依靠密码学来确保他们的秘密不会人尽皆知.密码学是一门使用秘密编码的学科.想要明白密码长什么样,看一看下面两段文本. nyr N.vNw ...

  4. jmu-python-凯撒密码加密算法_7-30 jmu-python-凯撒密码加密算法 (10 分)

    编写一个凯撒密码加密程序,接收用户输入的文本和密钥k,对明文中的字母a-z和字母A-Z替换为其后第k个字母. 输入格式: 接收两行输入,第一行为待加密的明文,第二行为密钥k. 输出格式: 输出加密后的 ...

  5. php实现凯撒密码加密算法,Python实现的凯撒密码算法示例

    本文实例讲述了Python实现的凯撒密码算法.分享给大家供大家参考,具体如下: 一 介绍 凯撒密码是一种非常古老的加密方法,相传当年凯撒大地行军打仗时为了保证自己的命令不被敌军知道,就使用这种特殊的方 ...

  6. php实现凯撒密码加密算法,Golang 实现凯撒密码

    一.凯撒密码加密代码思路 基本思路: 设置明文 和 位移步长(秘钥) 将明文转成小写,准备 明文字节切片 与 密文切片 循环将每个明文字符 按照 位移步长 做位移,存入密文切片 返回密文 导入包 im ...

  7. 凯撒密码加密算法python_Python最新暴力破解WiFi,攻破所有密码限制,最强破解!...

    生成密码本 对于这个密码本就是我们常用的密码,一般是有数字.字母和符号组成.而现在呢?我们就用Python生成一个简单的密码本,这里用到的思路主要是穷举法.这里用到的库是itertools,没有的可以 ...

  8. 7-137 凯撒密码 (20 分)

    7-137 凯撒密码 (20 分) 为了防止信息被别人轻易窃取,需要把电码明文通过加密方式变换成为密文.输入一个以回车符为结束标志的字符串(少于80个字符),再输入一个整数offset,用凯撒密码将其 ...

  9. 7-14 凯撒密码 (10 分)

    7-14 凯撒密码 (10 分) #include <iostream> #include <algorithm> #include <cstdio> using ...

最新文章

  1. 教你从0到1搭建秒杀系统-防超卖
  2. oracle v$sql last_load_time,Oracle 等待事件V$视图
  3. SCCM 2012 SP1系列(九)配置补丁更新-2
  4. qt连接mysql创建表_Qt编译mysql以及创建表后进行导入操作
  5. 数据库开发——MySQL——数据类型——非数值类型
  6. mysql怎样查询表的信息!
  7. pthread 简要使用指南
  8. TCP/IP 和 TCP/IP的 三/四次握手
  9. Javascript实现页面跳转传值示例Demo
  10. C语言遇空字符缩进,c语言代码缩进和空白
  11. 若依编辑和删除操作按钮不可用怎么办?
  12. 隐藏元素 mayaa
  13. Apache RewriteCond on HTTP_COOKIE
  14. 【51单片机】利用烧录软件生成延时函数 入门学习
  15. 开源cnc软件_带有开源软件的CNC铣削
  16. Idea配置svn出现错误的解决方案
  17. IOS 出现不支持的 URL
  18. Linux TCP之sack(二)
  19. mysql在dos界面修改密码
  20. apache 在windows下无法启动的一个错误

热门文章

  1. java 加载资源_在Java中加载资源的首选方式
  2. antd 能自适应吗_Antd表格滚动 宽度自适应 不换行的实例
  3. 为什么自己编写的页面总是在那里抖动_SEO排名,为什么旧页面比新内容排名高?...
  4. react-native中的动画
  5. 零基础入门Python3-列表list详解
  6. Python(37)_字典嵌套
  7. 【转】Java魔法堂:String.format详解
  8. POJ3628:Bookshelf 2【01背包】
  9. 微软2013年笔试题详解及深入
  10. IP 层收发报文简要剖析4--ip 报文发送