【PTA】6-8 电码加密

题样

//这也许是少有的题目有问题,把其他字母换成 字符 来做
void encrypt ( char *s)
{
    char *p=s;
    while(*p)
    {
        if(*p=='z')*p='a';
        else *p+=1;
        p++;
    }
}

 

 

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
莫尔斯电码是一种常用的电报编码,可以将字母、数字、标点符号等转换为一系列点和横线的组合。如果想要使用Matlab实现莫尔斯电码加密,可以按照以下步骤进行: 1. 定义莫尔斯电码字母表:莫尔斯电码字母表是由点和横线组成的字符编码序列,每个字母、数字、标点符号都有对应的莫尔斯电码。可以在Matlab中定义一个莫尔斯电码字母表的结构体,每个字母、数字、标点符号对应一个字段,字段的值为该字符的莫尔斯电码。 ``` morseCode.alphabets.A = '.-'; morseCode.alphabets.B = '-...'; morseCode.alphabets.C = '-.-.'; morseCode.alphabets.D = '-..'; morseCode.alphabets.E = '.'; morseCode.alphabets.F = '..-.'; morseCode.alphabets.G = '--.'; morseCode.alphabets.H = '....'; morseCode.alphabets.I = '..'; morseCode.alphabets.J = '.---'; morseCode.alphabets.K = '-.-'; morseCode.alphabets.L = '.-..'; morseCode.alphabets.M = '--'; morseCode.alphabets.N = '-.'; morseCode.alphabets.O = '---'; morseCode.alphabets.P = '.--.'; morseCode.alphabets.Q = '--.-'; morseCode.alphabets.R = '.-.'; morseCode.alphabets.S = '...'; morseCode.alphabets.T = '-'; morseCode.alphabets.U = '..-'; morseCode.alphabets.V = '...-'; morseCode.alphabets.W = '.--'; morseCode.alphabets.X = '-..-'; morseCode.alphabets.Y = '-.--'; morseCode.alphabets.Z = '--..'; morseCode.alphabets.zero = '-----'; morseCode.alphabets.one = '.----'; morseCode.alphabets.two = '..---'; morseCode.alphabets.three = '...--'; morseCode.alphabets.four = '....-'; morseCode.alphabets.five = '.....'; morseCode.alphabets.six = '-....'; morseCode.alphabets.seven = '--...'; morseCode.alphabets.eight = '---..'; morseCode.alphabets.nine = '----.'; morseCode.alphabets.period = '.-.-.-'; morseCode.alphabets.comma = '--..--'; morseCode.alphabets.question = '..--..'; morseCode.alphabets.apostrophe = '.----.'; morseCode.alphabets.exclamation = '-.-.--'; ``` 2. 编写加密函数:加密函数的输入为需要加密的文本,输出为莫尔斯电码序列。可以按照以下思路编写加密函数: - 将需要加密的文本全部转换为大写字母,方便后续处理 - 对于每个字符,查找莫尔斯电码字母表中对应的莫尔斯电码,将莫尔斯电码序列拼接到一起,每个字符之间用空格隔开 ``` function [morseCodeSequence] = encryptMorseCode(text) % Convert all letters to uppercase text = upper(text); % Get the morse code dictionary morseCode = getMorseCodeDictionary(); % Initialize the morse code sequence morseCodeSequence = ''; % Iterate through each character in the text for i=1:length(text) % Get the morse code for the current character if isfield(morseCode.alphabets, text(i)) morseCodeSequence = [morseCodeSequence, morseCode.alphabets.(text(i)), ' ']; elseif text(i)==' ' morseCodeSequence = [morseCodeSequence, '/ ']; end end end ``` 3. 测试加密函数:可以编写一个简单的测试脚本来测试加密函数,例如: ``` text = 'Hello World!'; morseCodeSequence = encryptMorseCode(text); disp(morseCodeSequence); ``` 输出结果为: ``` .... . .-.. .-.. --- / .-- --- .-. .-.. -.. -.-.-- ``` 这就是将原始文本加密后的莫尔斯电码序列。 需要注意的是,莫尔斯电码加密只是一种简单的加密方式,容易被破解。如果需要更加安全的加密方式,可以考虑使用其他加密算法,如AES、RSA等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值