Pascal题目 求大神解答
内容:在密码学里面有一种很简单的加密方式,就是把明码的每个字符加上某一个整数K而得到密码的字符(明码及密码字符一定都在ASCII码中可打印的范围内)。例如若K=2,那么a...
内容 :
在密码学里面有一种很简单的加密方式,就是把明码的每个字符加上某一个整数K而得到密码的字符(明码及密码字符一定都在ASCII码中可打印的范围内)。例如若K=2,那么apple经过加密后就变成crrng了。解密则是反过来做。这个问题是给你一个密码字符串,请你依照上述的解密方式输出明码。
至于在本任务中K到底是多少,请自行参照Sample Input及Sample Output推出来吧!相当简单的。
输入说明 :
每笔测试资料一列。每列有1个字符串,就是需要解密的明码。
输出说明 :
对每一测试数据,请输出解密后的密码。
范例输入 :
若题目没有特别说明,则应该以多测资的方式读取,若不知如何读取请参考 a001 的范例程序。
1JKJ'pz'{ol'{yhklthyr'vm'{ol'Jvu{yvs'Kh{h'Jvywvyh{pvu5
1PIT'pz'h'{yhklthyr'vm'{ol'Pu{lyuh{pvuhs'I|zpulzz'Thjopul'Jvywvyh{pvu5
范例输出 :
*CDC is the trademark of the Control Data Corporation.
*IBM is a trademark of the International Business Machine Corporation. 展开
在密码学里面有一种很简单的加密方式,就是把明码的每个字符加上某一个整数K而得到密码的字符(明码及密码字符一定都在ASCII码中可打印的范围内)。例如若K=2,那么apple经过加密后就变成crrng了。解密则是反过来做。这个问题是给你一个密码字符串,请你依照上述的解密方式输出明码。
至于在本任务中K到底是多少,请自行参照Sample Input及Sample Output推出来吧!相当简单的。
输入说明 :
每笔测试资料一列。每列有1个字符串,就是需要解密的明码。
输出说明 :
对每一测试数据,请输出解密后的密码。
范例输入 :
若题目没有特别说明,则应该以多测资的方式读取,若不知如何读取请参考 a001 的范例程序。
1JKJ'pz'{ol'{yhklthyr'vm'{ol'Jvu{yvs'Kh{h'Jvywvyh{pvu5
1PIT'pz'h'{yhklthyr'vm'{ol'Pu{lyuh{pvuhs'I|zpulzz'Thjopul'Jvywvyh{pvu5
范例输出 :
*CDC is the trademark of the Control Data Corporation.
*IBM is a trademark of the International Business Machine Corporation. 展开
展开全部
有问有答,不要食言。下面程序测试可行,而且读到回车不会断行(普通Read遇到回车终止)。
program Decode;
const
K = 7;
var
s: string;
i: Integer;
begin
Assign(Input, 'in.txt');
Reset(Input);
Assign(Output, 'out.txt');
ReWrite(Output);
i := 0;
while not EOF do
begin
Inc(i);
Read(s[i]);
if not (s[i] in [#13, #10]) then
s[i] := Chr(Ord(s[i]) - K);
end;
s[0] := Chr(i);
Write(s);
end.
program Decode;
const
K = 7;
var
s: string;
i: Integer;
begin
Assign(Input, 'in.txt');
Reset(Input);
Assign(Output, 'out.txt');
ReWrite(Output);
i := 0;
while not EOF do
begin
Inc(i);
Read(s[i]);
if not (s[i] in [#13, #10]) then
s[i] := Chr(Ord(s[i]) - K);
end;
s[0] := Chr(i);
Write(s);
end.
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询