当前位置:网站首页>【每周一坑】信息加密 +【解答】正整数分解质因数
【每周一坑】信息加密 +【解答】正整数分解质因数
2022-07-06 12:23:00 【Crossin的编程教室】
零基础python入门教程:python666.cn
大家好,欢迎来到 Crossin的编程教室 !
今天给大家来一个我比较喜欢的话题之一:信息加密
当然,这道题算是信息加密的皮毛的皮毛了。
请听题:
阿圆和奇奇在上课的时候传递小抄,但又不想小抄的内容被其他人发现。于是他俩就约定了一种加密方式:
只对信息内容中的英语或者拼音(也就是字母)进行加密,其他符号保留原样
每个字母向后移动5位,成为密文,比如 a->f,k->p
如果向后5位超过了z,就折回字母开头,比如 x->c
请用一段代码完成此规则的加密和解密。
参考示例:
【加密】
输入:there is a vegetable in your teeth
输出:ymjwj nx f ajljyfgqj ns dtzw yjjym
【解密】
输入:onz sn mzf izt
输出:jiu ni hua duo
附加题
你能否解密出这段文字:
ild gdpsh sxktgvts xc p ldds, pcs x--
x iddz iwt dct athh igpktats qn,
pcs iwpi wph bpst paa iwt sxuutgtcrt.
详细解答和参考代码将在下期栏目中给出,也可以参考其他同学在留言中的代码。
期待各位同学提交解答,更期待你能完成整个系列。
简单代码可直接在留言中提交,较长代码推荐使用 paste.ubuntu.com 或
codeshare.io 等代码分享网站,只需将代码复制上去保存,即可获得一个分享地址,非常方便。
往期问题可点击文章开头的合集“每周一坑”进入查看。
【解答】正整数分解质因数
本题的一种思路是:
从2开始尝试去整除原数N
如果可以整除,原数更新为 N//i,并输出 i;不能整除就继续试,直到N被自身整除
如果之前已经有质因数,最后剩下的 i 就是最后一个质因数;如果没有,说明原数就是质数
这里之所以不用判断除数 i 是不是质数,是因为 i 是从 2 开始逐个试过来的,如果它可以被更小的数整除,那么之前就已经被处理过了。因此能够被计算到的 i 一定就是质因数。
另外这里有个可以小小优化的点:每次尝试不一定要从2开始,而可以从上一个质因数开始。
参考代码:
n = input('输入待分解的正整数:')
start = 2
is_prime = True
while n > 1: # 不断分解n,直到分解为1
for index in range(start, n + 1) :
if n % index == 0: # n能被index整除
n //= index # n=n//index
if n == 1:
if is_prime:
print(f'{index}是质数')
else:
print(index)
else: # index 一定是素数
print(f'{index} * ', end='')
is_prime = False
break
start = index
_往期文章推荐_
如需了解付费精品课程及教学答疑服务
请在Crossin的编程教室内回复: 666
边栏推荐
- Oceanbase Community Edition OBD mode deployment mode stand-alone installation
- Deep learning classification network -- zfnet
- BeagleBoneBlack 上手记
- In unity space, an object moves around a fixed point on the sphere at a fixed speed
- mod_ WSGI + pymssql path SQL server seat
- Pay attention to the partners on the recruitment website of fishing! The monitoring system may have set you as "high risk of leaving"
- Example of applying fonts to flutter
- 系统与应用监控的思路和方法
- 微信小程序常用集合
- 02 基础入门-数据包拓展
猜你喜欢
Transformer model (pytorch code explanation)
An East SMS login resurrection installation and deployment tutorial
22-07-05 upload of qiniu cloud storage pictures and user avatars
Anaconda安裝後Jupyter launch 沒反應&網頁打開運行沒執行
Tencent byte and other big companies interview real questions summary, Netease architects in-depth explanation of Android Development
[Yann Lecun likes the red stone neural network made by minecraft]
Special topic of rotor position estimation of permanent magnet synchronous motor -- fundamental wave model and rotor position angle
Monthly report of speech synthesis (TTS) and speech recognition (ASR) papers in June 2022
腾讯T4架构师,android面试基础
22-07-05 七牛云存储图片、用户头像上传
随机推荐
HMS core machine learning service creates a new "sound" state of simultaneous interpreting translation, and AI makes international exchanges smoother
语音识别(ASR)论文优选:全球最大的中英混合开源数据TALCS: An Open-Source Mandarin-English Code-Switching Corpus and a Speech
[Yann Lecun likes the red stone neural network made by minecraft]
String length limit?
5. 無線體內納米網:十大“可行嗎?”問題
Ideas and methods of system and application monitoring
How to handle the timeout of golang
Technology sharing | packet capturing analysis TCP protocol
新一代垃圾回收器—ZGC
Appx代码签名指南
腾讯云数据库公有云市场稳居TOP 2!
Groovy基础语法整理
New generation garbage collector ZGC
AsyncHandler
JVM_ Common [interview questions]
8086 instruction code summary (table)
Continuous test (CT) practical experience sharing
Tencent T3 teaches you hand in hand. It's really delicious
Monthly report of speech synthesis (TTS) and speech recognition (ASR) papers in June 2022
Unity makes AB package