如何将字母转换为数字。 假设A:= 5,B:= 10。 当输入为AB时,我希望输出结果为A + B(510) 我打算用字母表中的所有字符来做这个。
答案 0 :(得分:-1)
我不是帕斯卡专家,但这应该有效:
用
获取每个字母的序号n:=ord(s)
然后你可以减去ascii" A"的Ord。如果您希望B等等的A 11为10,则添加10;
如果你想将字母映射到你自己的数字,你可以使用一个数组代替,该数组在对应于" A"的序数位置的索引处包含5,在B的位置等等10。
然后申请
str()
到每个结果n
然后使用
+
或
concat()
将字符串放在一起
答案 1 :(得分:-1)
这将引导您找到完整的解决方案:
program ccn;
const
a= 'A';
z= 'Z';
type
domain= a..z;
var
conv: array[ domain] of integer;
input: string;
i: integer;
begin
conv[ 'A'] := 5;
conv[ 'B'] := 10;
{ ...more}
input := 'AB';
writeln( 'input:', input);
write( 'output:');
for i := 1 to length( input)
do
write( conv[ input[ i]]);
writeln;
end.