主题:打印‘A’,‘B’,‘C’,‘D’,‘E’五个字符任意排列的所有情况
6yangweihua
[专家分:180] 发布于 2005-06-02 20:42:00
HELP!!!!![em8][em7][em9][em11][em13][em16]
回复列表 (共8个回复)
沙发
def [专家分:3380] 发布于 2005-06-03 22:21:00
begin
writeln('ABCDE');
writeln('BCDEA');
...
end.
着是最好的方法
板凳
hyhuangyu [专家分:0] 发布于 2005-06-07 20:55:00
用阿思可码呀!~~~~~~~~很容易解决的问题
3 楼
6yangweihua [专家分:180] 发布于 2005-06-16 19:00:00
你打出来???
4 楼
XVenus [专家分:20] 发布于 2005-06-16 20:45:00
for i:=65 To 69 Do
chr(i)
5 个嵌套
5 楼
flyingfree [专家分:90] 发布于 2005-07-05 21:17:00
和求1~5数字的全排列方法一样——但在输出时是write(chr(<数字>+ord('A')-1));
[em1][em1][em1]
[fly]So Easy![/fly]
6 楼
口口and枕头 [专家分:1550] 发布于 2005-07-06 20:03:00
XVenus
你所说的
for i:=65 To 69 Do
chr(i)
5 个嵌套//怎么做呀~~~说完嘛`~
7 楼
dhytxz [专家分:0] 发布于 2005-07-12 22:36:00
此为n的全排列。运行程序输入ABCDE即可。
program arrange;
var a:string;
k,n:integer;
procedure swap(var a:string;k,i:integer);
var t:char;
begin
t:=a[k];a[k]:=a[i];a[i]:=t;
end;
procedure perm(a:string;k,n:integer);
var i:integer;
begin
if k=n then writeln(a)
else for i:=k to n do
begin
swap(a,k,i);
perm(a,k+1,n);
end;
end;
begin
write('input a string:');
readln(a);
n:=length(a);
perm(a,1,n);
end.
8 楼
口口and枕头 [专家分:1550] 发布于 2005-07-17 19:45:00
楼上的,,,,,在第一个过程中,你的变量说明有问题~~~
明明是n后来又用i.....
请更正
以便大家学习~~~
我来回复