第一次发帖到StackOverflow!
我是一个新的程序员,所以请耐心等待,因为我还没有跟上所有可能的函数,所以可能我只是目前缺少一个函数或方法的知识,可以快速解决我的问题。
感谢大家的帮助!
#string used for comparing code to
alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
#strings for shifting the code
shift = "ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
punctuation = ".,!;:?"
#ask user for the encrypted text
code = input("Enter text: ")
#variables storing the most common letters and the # of times they come up
common1 = 0
common2 = 0
common3 = 0
ac = 0
bc = 0
cc = 0
for i in range(0, len(alphabet)):
# print number of times each letter comes up --- print( str(alphabet[i]) + " is present " + str(code.count(alphabet[i])) + " number of times" )
#finding the number of times the most common letter comes up
if code.count(alphabet[i]) > common1:
common3 = common2
cc = bc
common2 = common1
bc = ac
common1 = code.count(alphabet[i])
ac = alphabet[i]
elif code.count(alphabet[i]) > common2:
common3 = common2
cc = bc
common2 = code.count(alphabet[i])
bc = alphabet[i]
elif code.count(alphabet[i]) > common3:
common3 = code.count(alphabet[i])
cc = alphabet[i]
print("Most common letter, " + str(ac) + ", comes up " + str(common1) + " times")
print("Second most common letter, " + str(bc) + ", comes up " + str(common2) + " times")
print("Third most common letter, " + str(cc) + ", comes up " + str(common3) + " times")
for i in range(0, len(code)):
a = shift.index("E") + 26 - shift.index(ac)
print(shift[a + shift.index( code[i] ) ], end = "")
您应该检查每个位置的代码值是否在您的字母表中。如果不是,只需打印代码中的值,然后继续下一个循环。
for i in range(0, len(code)):
if code[i] not in alphabet:
print(code[i])
continue
a = shift.index("E") + 26 - shift.index(ac)
print(shift[a + shift.index( code[i] ) ], end = "")
我需要编写一个python、hacker和wow这些单词的加密文本,并且使用不包括使用RAW_INPUT的python中的凯撒密码,距离为3。这是我到目前为止,但我不断得到一个错误消息,我不知道如何修复它。
问题内容: 我通过java进行了凯撒密码,它可以运行,但是在用户输入密钥后不对任何内容进行加密! 这是我的代码 跑: 问题答案: 使用效率不是很高…您可以对值进行整数运算以获得其索引。 我在代码中添加了注释以解释更多信息,但这就是我想出的。 输出应该是这样的
首先,我是编程的新手,所以要温柔。而且,我一直在做这个任务,但没有任何结果。任务是创建一个凯撒密码程序,它加密或解密一个段落最多100个字符。实际上是两个独立的实验室。第一个实验是加密,然后第二个实验是解密。一旦我弄清楚了如何创建加密程序,解密程序应该很简单,因为我可以只进行语义更改来解密而不是加密。无论如何,这是我到目前为止的代码。它通过了他们给我们的5个测试中的4个,但出于某种原因,有一个测试
示例:返回。如果给定的整数值小于0或大于26,则应返回空字符串。 我的问题是,作为回报,它只给我真或假。如何解决这个问题:该方法应该返回一个字符串,其中每个字符都是根据指定的整数值移动的。
我在做凯撒密码,这是我的密码 我尝试使用%来解决这个问题(我也不是100%确定如何使用模运算符),但我没有成功。 文本文件的内容是: