我需要一些帮助来解决这个 Turbo Pascal 问题:
如果 N1 的每个数字在 N2 中至少出现一次,则称两个整数为兄弟,反之亦然。示例:如果 N1 = 1164 和 N2 = 614 程序将显示 N1 和 N2 是兄弟,如果 N1 = 504 和 N2 = 455 程序将显示 N1 和 N2 不是兄弟
我的问题是:如何检查这两个整数是否是兄弟?这是我的工作:
function brother(n1, n2: integer): boolean;
var
test: boolean;
ch1, ch2: string;
begin
chr(n1, ch1);
chr(n2, ch2);
i := 0;
repeat
j := 0;
i := i + 1;
test := false;
repeat
j := j + 1;
if ch1[i] = ch2[j] then
test := true;
until (test = true) or (j = length(ch2));
until (test = false) or (i = length(ch1));
brother := test;
end;
当我运行它时,它总是打印(“整数是兄弟”),即使我输入 504 和 455,我想知道错误在哪里。