Нужно решить следующую задачу:
Дано n различных натуральных чисел (n=5). Напечатать все перестановки. (рекурсия)
Вот. Обязательно с рекурсией. Подскажите хотя бы принцип, а то чего-то вообще не врубаюсь, с какого конца к ней подойти...
Воспользуйтесь поиском, задача решалась.
http://forum.pascal.net.ru/index.php?showtopic=3777&st=0&p=52823entry52823
procedure Next(s: string);Автору темы остается ее вызвать, предварительно заполнив массивы..
var
i: word;
t: string;
b: boolean;
begin
b:=true;
for i:=1 to n do if not u[i] then begin
Str(a[i]:3,t);
u[i]:=true;
Next(s+t);
u[i]:=false;
b:=false
end;
if b then WriteLn(s)
end;
Спасибо!
Ну а вообще нашёл ещё на другом сайте код.
В результате вроде работает.